我有一个Python CGI脚本这需要形式输入x
和y
(整数),并把它传递给使用subprocess
一个C++可执行该程序这两个值的总和写入到文本文件。无法写入Linux服务器编程文件
该代码在我的本地机器上正常工作。然而,经过多次测试后,我发现无论何时在我的服务器上运行此程序(在/var/www
中)并尝试写入文件时都会发生某种错误,因为我收到了“内部服务器错误”页面。
服务器不是我的,所以我实际上没有sudo权限。但是从putty中,我可以手动运行可执行文件,并且它确实写入文件。
我的猜测是我必须以某种方式运行python脚本中的可执行文件,但有一定的权限,但我不确定。我将不胜感激任何建议!
编辑:
@gnibbler:有趣的是,我能够写入文件到/ tmp目录没有问题。
所以我认为你的建议是正确的,服务器根本不允许我从浏览器调用脚本时写入。
另外,我无法访问带有错误日志的目录,所以我将尝试获得该权限。
脚本是否通过网络服务器“启动”?因为如果是这样,WS已经是如何在服务器上的用户(或我认为是这样) – DonCallisto
是Web服务器正确配置,以启动CGI脚本?你有没有测试cgi是否可以工作? –
脚本不会以您的权限运行,它将以Web服务器的权限运行。如果服务器没有写访问权限,那么脚本将会因为错误而死亡,就像您所描述的那样。 – tripleee