如何使用XAMPP
运行在Ubuntu蟒蛇CGI脚本我不能使用XAMPP如何使用XAMPP
我在httpd.conf中做出必要的修改(/选择/ LAMPP /等)
在Ubuntu中运行的Python CGI脚本<Directory "/opt/lampp/htdocs">
Options +ExecCGI
AddHandler cgi-script .cgi .py
Order allow,deny
Allow from all
</Directory>
============================================== ============
和我的Python脚本文件是
#!/usr/bin/python
# -*- coding: UTF-8 -*-# enable debugging
import cgitb
cgitb.enable()
print "Content-Type: text/html;charset=utf-8"
print "Hello World!"
================================================= ==========
在此先感谢!
CGI脚本的输出应该由两部分组成,两部分用空行分隔 。第一部分包含许多标题, 告诉客户跟随什么样的数据。
https://docs.python.org/2/library/cgi.html
在你当前的代码示例中的空行缺少(在你最初发布的代码)。尝试改变第一print
声明:
print "Content-Type: text/html;charset=utf-8\n
“
,它应该工作(至少它没有与Ubuntu和Apache一个亚马逊的服务器上)
我与Python和CGI个人的故障处理流程:
- 检查权限的脚本,例如它是由www数据资?
- 是否Python脚本运行在命令行中调用时?我。 e。没有简单的拼写错误,缩进错误等。
- 尝试使用记录器(因为您不能从
print
到stdout
)以查看它崩溃的位置和时间,例如,这一个:http://www.electricmonk.nl/log/2011/08/14/redirect-stdout-and-stderr-to-a-logger-in-python/
我在error.log中得到错误为 [Tue May 17 11:54:24.307673 2016] [cgid:error] [pid 15122:tid 140289761994624](2)没有这样的文件或目录:AH01241:'/ var/www/html/test/labels.py'失败 [Tue May 17 11:54:24.307933 2016] [cgid:error] [pid 15020:tid 140289461118720] [client 127.0.0.1:60209] labels.py –
在您的httpd.conf中,您的cgi目录是“/ opt/lampp/htdocs”,但Python脚本似乎在'/var/www/html/test/labels.py'中。当您移动脚本或更改http.conf时,它会起作用吗? –
现在我正在使用apache2和ubuntu。不是xampp。 –
会发生什么? –
运行后,出现如下错误:“服务器遇到内部错误,无法完成请求 错误消息: 标头输出结束之前:labels.py” –
在服务器上部署的Python脚本中,第二次和第三次印刷声明之间是否有换行符? –