23

実行時python -m SimpleHTTPServer 8000またはpython -m CGIHTTPServer 8000シェル内で、現在のディレクトリのコンテンツをインターネットにホストしています。

参照するときにコマンドラインで上記のコマンドを使用して、次の cgi_script.py を正しく動作させたいと考えています。192.xxx.x.xx:8000/cgi_script.py

#!/usr/bin/env python
print "Content-Type: text/html"
print
print """\
<html>
<body>
<h2>Hello World!</h2>
</body>
</html>
"""

しかし、このスクリプトは文字どおりに表示され、"Hello World!" だけではありません。部。ところで、cgi_script.py と、それをホストしているフォルダーのファイル許可を 755 に変更しました。

4

6 に答える 6

35

で試してくださいpython -m CGIHTTPServer 8000

cgi-bin実行可能にするには、スクリプトをまたはhtbinディレクトリに移動する必要があることに注意してください。

于 2012-05-01T10:23:19.433 に答える
6

SO は私がコメントすることを許可していないので、rodrigo に加えて、これを別の回答として追加します。

cgi_directoriesデフォルトで に設定されている別のパラメータを使用できます['/cgi-bin', '/htbin']。詳細はこちら

于 2013-06-02T10:07:29.150 に答える
0

python -m CGIHTTPServer 8000この問題に遭遇したとき、コマンドを実行したときのディレクトリに応じて、異なる結果が得られることがわかりました。cgi-bin ディレクトリでコマンドを実行しようとすると、ブラウザは生のスクリプト コードを返し続けました。1 レベル高く cd してpython -m CGIHTTPServer 8000コマンドを再度実行すると、スクリプトの実行が開始されました。

于 2014-01-15T23:21:44.433 に答える
0

これは私にとってはpython -m CGIHTTPServer 8000うまくいき、cgi-bin と同じメニュー レベルのコマンドを実行し、cgi_script.py を cgi-bin フォルダーに移動します。ブラウザーでhttp://localhost:8000/cgi-bin/cgi_script.py と入力します。

于 2016-01-23T08:42:42.313 に答える