我不熟悉使用PHP在服务器上运行诸如Python脚本之类的东西。我使用简单的PHP代码成功运行了一些脚本,如下所示:
<html>
<head>
</head>
<body>
script output:<br>
<?php
$command = escapeshellcmd('/path/user/public_html/test.py');
$output = shell_exec($command);
echo $output;
?>
</body>
</html>
成功运行的Python脚本如下所示:
#!/usr/bin/env python
from subprocess import call
call(["ls", "-l"])
无法成功运行的Python脚本如下所示:
#!/usr/bin/env python
from subprocess import call
call(["touch", "/path/user/public_html/test.txt"])
我不明白为什么第一个有效,第二个没有。这是怎么回事?
服务器正在运行Scientific Linux 5,我对服务器有用户级而非根级控制。