フォーム入力x
と(整数)を受け取り、プログラムが2つの値の合計をテキストファイルに書き込むy
C++実行可能ファイルに渡すpython CGIスクリプトがあります。subprocess
コードはローカル マシンで正常に動作します。しかし、多くのテストを行った結果、サーバー上でこのプログラムを実行し/var/www
てファイルに書き込もうとすると、「内部サーバー エラー」ページが表示されるため、何らかのエラーが発生することがわかりました。
サーバーは私のものではないため、実際にはsudo権限がありません。しかし、パテから実行可能ファイルを手動で実行すると、実際にファイルが書き込まれます。
私の推測では、Python スクリプトから何らかの権限で実行可能ファイルを実行する必要があると思いますが、よくわかりません。提案をいただければ幸いです。
編集:
@gnibbler: 興味深いことに、ファイルを /tmp ディレクトリに問題なく書き込むことができました。
したがって、あなたの提案は正しいと思います。サーバーは、ブラウザーからスクリプトを呼び出すときに書き込みを許可しません。
また、エラー ログがあるディレクトリにアクセスできないため、そのためのアクセス許可を取得する必要があります。