Python3: CentOS6でSCLのPythonをCGIで使う apache / httpd

 ApacheのCGIでSCL版のPythonを利用する方法。
 既存で色々入ってるお名前.com VPSのお遊び環境でPython3のCGIを動かすためにちょいちょいいじってみた。

 まず基本のCGI設定 httpd.conf

 次にApacheをSCL環境で動かす。

 で、追加のおまじない。

 SCLは、環境変数とかをいじって違うバージョンを動かす仕組み。
 Apacheが立ち上がる時に、環境変数を書き換えてやるように/etc/sysconfig/httpdに書き足している。 これで立ち上げたApacheはpythonコマンドの向かう先がpython35になっている。
 コマンドラインで実行する場合は、scl_sourceすればそのまま使えるけど、Apache上ではLD_LIBRARYとかの動きが違うようで、そのままだとライブラリ不足でエラー表示になるので、ldconfigしてやってライブラリ自体はグローバルに登録。

 これでシステムバージョンと異なるscl版PythonでCGIが出来る。

 CGI自体はごく普通でOK、Python3系を動かすときの日本語版のまじないはこんな感じ。

(8)


カテゴリー: LAMP[Linux, Apache, MySQL, PHP]   パーマリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です