我试图在Ubuntu 18.04中使用exec函数从PHP执行包含Python命令的shell脚本。问题是Python脚本无法创建用于写入数据的文件。
这是我的shell脚本test.sh
python3 p1.py
这是我的python脚本
with open('trial.txt','w') as file:
file.write('Hello world')
这是我的PHP脚本
<?php
try{
$out=exec('test.sh',$output,$status);
print_r($output);
}
catch(Exception $e)
{
echo $e;
}?>
我的$ status为1。apache用户权限是否有问题?当前的apache用户是www-data。我已授予使用chmod +x p1.py
的python脚本的权限。如果该Shell脚本可以从ubuntu终端运行,则可以正常运行并创建一个新文件。但是从PHP执行时,它无法正常工作。