2012-03-01 4 views
0

lighthhtpdサーバーをインストールしてphpとpythonファイルを実行しましたが、.pyファイルを実行すると、そのファイルにダウンロードウィンドウがポップアップします。ここでlighhttpdからpythonファイルにアクセス

iは、CGIのconfファイルに入れてきたものである

cgi.assign     = (".py" => "/usr/bin/python2.6", 
          ".php" => "/usr/bin/php-cgi") 

誰もがlighthttpdに取り組んでPythonのファイルを持っているために、この問題を解決する方法を知っていますか?

ありがとうございました。

+0

私は長い間lighttpdを使用していませんでしたが、容疑者はおそらく間違ったメタタイプであると解釈され、ダウンロードされました。 htmlとphpの場合は 'text/html'にする必要がありますが、どうやってそれを行うのか尋ねる必要はありません...私はnginxに行きました。 – Paul

+0

.pyファイルにlighthhtpdプロセスの実行権限がありますか? – SpliFF

+0

はい、彼らは許可を受けました – dyoser

答えて

1

cgi-binディレクトリに.pyファイルを置き、そこから実行してください。デフォルトで正しく覚えていれば、lighttpdの設定ではcgi-binディレクトリのcgiスクリプトしか許可されません。可能であれば、cgi.conf全体を投稿してください。

場合は、$HTTP["url"] =~ "^/cgi-bin" { (...) }のようなスニペットを見つけ、周囲のマッチブロックを削除します。

今すぐファイルをダウンロードすると、内部には何がありますか? Pythonスクリプトの実際のソースですか、またはテキストの実行の予想される出力ですか?私はそれが以前のものだと推測しています。

+0

はい、lighttpdはcgiディレクトリ内で動作します...そして、cgi.confには上記以外の特別な行はありません。ありがとう。 – dyoser

1

ソリューションは、最初の行で次のコマンドを挿入したコメントと回答してくれてありがとう...:

print ("Content-Type: text/plain;charset=utf-8 \n") 

私は光でのpython 3.1を使用して...とするとき私は、この最初の行を設定しますスクリプトは正しく出力しました。

+0

これは私のために働く。私はこれをやることなく前にpython/lighttpdを使っています。 – LoveMeSomeCode

関連する問題