Python教程

在Apache服务器上执行Python CGI脚本的配置方法

本文主要是介绍在Apache服务器上执行Python CGI脚本的配置方法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

apache服务器通常不会执行python脚本。需要配置httpd.conf文件,在该文件中,AddHandler的属性中增加.py。
1、httpd.conf设置:
增加两行
AddType text/html .htm .html .py
AddHandler cgi-script .cgi .py

2、py文件首行加安python安装目录
#!C:\Users\Administrator\AppData\Local\Programs\Python\Python37\python.exe

3、py文件输出规范
 在用Python做hello.py的时候,输出的内容必须服务CGI的标准规范;
 第一行必须输出的是content-type:text/html
 第二行必须是空行(不要放空格等任何字符)
 第三行之后的内容就是浏览器要显示的内容
例如:
print("content-type:text/html")
print("")
print("任何想要显示的内容")

4、按以上配置和修改程序后,可以用浏览器直接访问一个测试的.py程序,看看能否显示print的结果。
测试文件内容如下:
#!C:\Users\Administrator\AppData\Local\Programs\Python\Python37\python.exe
print("Content-type:text/html")
print()
print("<html>")
print("<head>")
print("<title>123</title>")
print("</head>")
print("<body>")
print("<h2>Hello World!</h2>")
print("</body>")
print("</html>")

5、如有问题不能显示可以查看error.log文件(apache目录下的log目录下)
在这个error.log文件中记录了使用过程中出现的错误具体情况,包括:python语句哪行报错信息。

6、python接收form数据
import cgi, cgitb
# 创建 FieldStorage 的实例化
form = cgi.FieldStorage()
# 获取数据get
site_name = form.getvalue('fname')
site_url = form.getvalue('lname')

这篇关于在Apache服务器上执行Python CGI脚本的配置方法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!