スクリプトを実行する代わりにApacheで提供するにはどうすればよいですか?
-
02-07-2019 - |
質問
Apache Webサーバーを使用してPythonスクリプトをホストしようとしていますが、サーバーは単にダウンロード用に提供するのではなく、スクリプトを実行しようとします。
サーバーに直接アクセスできず、行を追加します
AddType text/plain .py
ルートフォルダー内の.htaccessが機能しないように見えますが、何か間違っている可能性があります。
ファイルを実行しようとする代わりに、テキストとしてファイルを送信するようにするにはどうすればよいですか?
-編集
名前の変更は機能しません。 Script.py.safeをクリックすると、500サーバーエラーが引き続き発生します。
.htaccessファイルは機能するが、何らかの理由で1つのaddType行が機能しないことにも言及する必要があります。何かをオーバーライドしていないか、行が間違っているためです。
解決
.htaccess内:
RemoveHandler .py
他のヒント
Apacheの設定を変更できず、htaccessファイルで上書きできない場合、最も簡単な解決策はファイル拡張子を変更するか、印刷するスクリプトを書くことですターゲットスクリプトの内容。
どちらもある程度のハッキングですが、正しい解決策はApacheの構成を変更することです。
1つのオプションは、拡張子を変更し、名前を変更する必要があることを明確にすることです。 IE python.py.safeまたはpython.py.dl。ユーザーは余分なビットを削除する必要があります。
圧縮することもできます。
Pythonスクリプトをロードするものを書きます。この方法では、元気になり、コードの書式設定とスタイル設定を含めることもできます。ファイル拡張子によって除外することはできないため、Pythonで記述することもできます。
<IfModule mime_module>
<Files *.py>
ForceType text/plain
</Files>
</IfModule>
フォルダの.htaccessで動作するはずです;)