0

Web サーバーの cgi-bin ディレクトリから Python スクリプト 'test.py' を実行したいと考えています。cgi-bin ディレクトリは 'www/cgi-bin/' にあります。python scrip はそのディレクトリにあります。私が実行しているphpコードは「www/html/website/index.php」にあります。

ここに入る正しいパスは何ですか ------> exec('path');

TYVM

編集: 私の python スクリプトは chmod +x されており、実行可能です (私はテスト済みです)

4

2 に答える 2

0

PHPスクリプトが「www」ディレクトリと同じディレクトリにあると仮定します。

<?
    exec('./www/cgi-bin/test.py'); 
?>

または chmod なしで、Python で実行できます

<?
    exec('python ./www/cgi-bin/test.py'); 
?>
于 2011-06-22T16:09:05.017 に答える
0

あなたのPHPコードはwww/html/website/ディレクトリで実行されています。2 つのディレクトリに移動し (ディレクトリに到着www/)、cgi-bin/サブディレクトリに移動する必要があります。したがって、これは機能するはずです:

exec('../../cgi-bin/test.py');

これは、PHP スクリプト ディレクトリである現在の作業ディレクトリに依存していることに注意してください。これは、特に PHP スクリプト内の何かが現在の作業ディレクトリを明示的に変更する場合、または単にこの PHP スクリプトが別のスクリプトから含まれている場合に、常に当てはまるとは限りません。そのため、絶対パスを使用することをお勧めします (たとえば、ベース ディレクトリの絶対パスを構成ファイルに入れます)。

于 2011-06-22T16:11:49.377 に答える