尝试用Python写入文件时发生500内部服务器错误
我在服务器example.com上的public_html/menuProject/中有一个python脚本save.cgi 我可以通过调用尝试用Python写入文件时发生500内部服务器错误,python,permissions,cgi,Python,Permissions,Cgi,我在服务器example.com上的public_html/menuProject/中有一个python脚本save.cgi 我可以通过调用example.com/menuProject/save.cgi?xml=Hello从浏览器访问脚本,并显示“Hello”,但当我尝试写入文件时,会出现500个内部服务器错误 import os, sys import cgi print "Content-Type: text/plain;charset=utf-8" print form = cgi.
example.com/menuProject/save.cgi?xml=Hello
从浏览器访问脚本,并显示“Hello”,但当我尝试写入文件时,会出现500个内部服务器错误
import os, sys
import cgi
print "Content-Type: text/plain;charset=utf-8"
print
form = cgi.FieldStorage()
xml = form.getvalue("xml")
resultFile = "feed.xml"
print "hello"
with open(resultFile, "w") as f:
f.write(xml)
save.cgi
和feed.xml
都在同一个文件夹public\u html/menuProject/
menuProject
和所有文件的文件权限为:-rwxrwx
.
你能帮我弄清楚为什么它仍然给我500个内部服务器错误吗?更新:
感谢@Jon Clements
我做了一个:
print sys.version
并发现Web服务器版本为2.4,而代码为2.6
通过使用删除使其正常工作
import os, sys
import cgi
print "Content-Type: text/plain;charset=utf-8"
print
form = cgi.FieldStorage()
xml = form.getvalue("xml")
resultFile = "feed.xml"
print "hello"
f = open(resultFile, "w")
f.write(xml)
您检查过web服务器的错误日志了吗?您检查过服务器是否运行python 2.6或2.7吗?如果是2.5,您需要专门启用,而旧的服务器根本不支持它。@SteveBarnes这是python 2.6.4,我仍然无法理解。为什么从浏览器调用脚本不起作用?除此方法外,是否存在触发脚本从浏览器写入文件的变通方法?