サーバー上でプログラムを動かす

  サーバー(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系)」にして保存しアップロードしてください。


投稿日

カテゴリー:

,

投稿者:

コメント

コメントを残す

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