我想从我的网络服务器上的 cgi-bin 目录运行 python 脚本“test.py”。cgi-bin 目录位于“www/cgi-bin/”。python 脚本位于该目录中。我正在执行的 php 代码位于“www/html/website/index.php”。
这里的正确路径是什么 ------> exec('path');
TYVM
编辑:我的 python 脚本已经 chmod +x'd 并且是可执行的(我已经测试过)
然后,您的 PHP 代码将在该www/html/website/
目录中执行。你需要上两个目录(到达www/
目录),然后下到cgi-bin/
子目录。所以这应该工作:
exec('../../cgi-bin/test.py');
请注意,这依赖于当前工作目录是 PHP 脚本目录。情况可能并非总是如此,特别是如果 PHP 脚本中的某些内容显式更改了当前工作目录,或者只是如果此 PHP 脚本包含在不同的脚本中。所以最好使用绝对路径(例如,将基目录的绝对路径放入配置文件中)。
假设 PHP 脚本与“www”目录位于同一目录中。
<?
exec('./www/cgi-bin/test.py');
?>
或者没有 chmoding,你可以通过 Python 运行它
<?
exec('python ./www/cgi-bin/test.py');
?>