我正在尝试用Apache运行一个非常简单的“Hello World”程序。 但是,Apache在尝试执行我的python文件时返回500内部服务器错误。 我在这里阅读了几个类似的主题并尝试了建议,没有运气。 我尝试过的事情:
我使用的工具包括:
我的代码: HTML文件(在Apache文件夹的htdocs文件夹中):
<form action="/cgi-bin/hello_get.py" method="post">
First Name: <input type="text" name="first_name"> <br />
Last Name: <input type="text" name="last_name" />
<input type="submit" value="Submit" />
</form>
python文件(在cgi-bin文件夹中):
# Note that I tried this without the C:/ also
#!C:/Users/MyName/workspace/Flask/flask/Scripts
# Import modules for CGI handling
import cgi, cgitb
# Create instance of FieldStorage
form = cgi.FieldStorage()
# Get data from fields
first_name = form.getvalue('first_name')
last_name = form.getvalue('last_name')
print("Content-Type:text/html\r\n\r\n")
print("<html>")
print("<head>")
print("<title>Hello - Second CGI Program</title>")
print("</head>")
print("<body>")
print("<h2>Hello %s %s</h2>" % (first_name, last_name))
print("</body>")
print("</html>")
答案 0 :(得分:2)
我明白了。
在我的shebang系列中,而不是:
#!C:/Users/MyName/workspace/Flask/flask/Scripts
我应该:
#!C:/Users/MyName/workspace/Flask/flask/Scripts/python.exe
我认为我的shebang应该有一条通往python解释器所在地的路径,我没有意识到我需要翻译的实际完整路径。
现在正在运作。
回顾一下,如果您在遵循这些说明后遇到此问题: http://editrocket.com/articles/python_apache_windows.html 确保如果使用Windows,则路径是从C:/驱动器到python.exe可执行文件的完整绝对路径。