我正在尝试从php执行我的python脚本,如下所示
exec('python C:/wamp/www/Proj/bin/test_wrapper.py');
它没有启动test_wrapper.py 然后我尝试使用C ++而不是test_wrapper.py创建一个exe,并尝试从我的php调用该C ++ exe,如下所示
exec('C:/wamp/www/Proj/bin/LaunchEngine.exe');
它没有再次工作。我确信我在使用exec()时缺少一些非常基本的东西。我是python和php的初学者。 我的php,python / C ++ exe在同一个子目录(bin)中。 请帮我。 作为参考,这是我的python脚本test_wrapper.py 导入子流程
def main():
script=subprocess.Popen('python proj2xml.py')
script.wait()
script=subprocess.Popen('python cost2xml.py')
script.wait()
launch_fcs_engine=subprocess.Popen('fcs.exe')
launch_fcs_engine.wait()
if __name__ == '__main__':
main()
提前致谢
答案 0 :(得分:1)
我能想到两种可能性。 1.您没有权限执行test_wrapper.py脚本,更改文件的权限, 2.如果您尝试通过浏览器运行PHP脚本,那么您的PHP脚本将在apache用户上执行,并且您的python没有作为apache ueser运行的权限。 (当您在命令行上测试python脚本时,您将以root身份运行。您可能没有以root身份运行Web服务器(这是一件好事),并且Web服务器的用户没有相应的权限来创建和/或写入该文件。) 我对windows不太熟悉,请在windows中尝试chmod和chown linux命令等效。
请验证。