サーバー(Unix系)上でpythonを動かす
1.シバン(Shebang)を用意する
レンタルサーバーは通常Unix系のサーバーで動いている、プログラムの1行目で”pythonの実行場所”を指定する必要がある、これをシバンと呼ぶ。全てのプログラムの1行目にシバンを記述する。
windowsサーバでは必要ありません。
#!/・・・/・・・/・・・
「#!」の半角文字で始まり、後続に「pythonの実行場所」を指定する。実行場所の情報については各プロバイダーの利用規約等に記載されており、pythonのバージョンごとに設けられている。
#で始まる行はコメントして扱われ、2行目以降が指定したバージョンのpythonプログラムで実行されます。
2.拡張子.pyを活かす
シバンを設定するだけでpythonは動きます、ただし拡張子を.cgiとする必要が有ります。シバンが設定されていれば何処のディレクトリー配下でもpythonは動きます。
しかし拡張子が.cgiだと他のシステムとの互換性に欠けるので、やはり拡張子は.pyのままで動かしたい場合には.htaccessを利用する。pythonプログラムの存在場所より上位のディレクトリーに設置する。
AddHandler cgi-script .py
3.パーミッションを設定する
Windows環境でpythonプログラムを開発する場合には注意する必要がある。
レンタルサーバーは通常Unix系のサーバーで動いている、必ずパーミッションを「700」以上に設定する。プログラムソースをアップロードしただけでは実行不可能な属性(600)なので呼出・書込・実行可能な属性(700)以上を設定する。
4.改行コードを確認する
pythonプログラムのテキストファイルの改行コードを変更する必要がある。
pythonプログラムを改行コード「CR(Windows系)」で保存すると、文法エラーチェックでは問題が検出できないにも関わらず、ブラウザからアクセスすると「500 Internal Server Error」となる。
テキストエディターで改行コードを「LF(Unix系)」にして保存しアップロードしてください。
コメントを残す