1、Apache下载及配置
- 我下载的版本是 Apache 2.4.20
- Listen 8080
- 中间出现错误,可能原因:路径错误 或者 端口错误
- 注意每次更改配置,在CMD命令窗口,输入如下(建议先停止服务再删除):
sc delete apache (apache是你配置时设置的名称)
能够出现如图,证明配置成功!
打开浏览器,如图 输入,弹出对应页面
2、编辑Python 脚本
代码内容,文件名称 test2.py:
#!/usr/bin/python
#encoding:utf-8
print ("Content-type:text/html")
print() # 空行,告诉服务器结束头部
print ('<html>')
print ('<head>')
print ('<meta charset="gbk">')
ss1=u'<title>哈</title>'
bs1=ss1.encode('gbk')
print (bs1.decode('gbk'))
print ('</head>')
print ('<body>')
ss2=u'<h2>哈</h2>'
bs2=ss2.encode('gbk')
print (bs2.decode('gbk'))
print ('</body>')
print ('</html>')
charset="gbk"
3、再次配置Apache文件,使 Python脚本文件能够在浏览器中运行
找到D:\application_software\Apache\conf\httpd.conf文件,用记事本打开
- 设置CGI目录 ScriptAlias /cgi-bin/ "D:/application_software/Apache/cgi-bin/"
<Directory "D:/application_software/Apache/cgi-bin/"> AllowOverride None Options None Require all granted </Directory>
- 打开httpd.conf,找到”#ScriptInterpreterSource Registry “,移除前面的注释# (如果找不到这行,就自己添加进去)
- 找到“Options Indexes FollowSymLinks ”这句,在后面加上”ExecCGI “。(那个”Indexes “最好也能去掉,因为如果不去掉的话,目录下面没有index.html这种文件,就会显示出目录列表下的所有文件,所以有安全漏洞问题。如果去掉Indexes,而且没有index.html文件的话,就会显示一个Forbidden页面)
- 找到”AddHandler cgi-script .cgi “,在后面加上 .py。如果没有这句,可以自己添加 “AddHandler cgi-script .py”
4、结果
将 test2.py 放入路经 D:\application_software\Apache\htdocs
将test2.py 放入路经D:\application_software\Apache\cgi-bin