Apache+Python+Web例程

1、Apache下载及配置

参考 Apache服务器最新版下载、安装及配置(win版)

  • 我下载的版本是 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




猜你喜欢

转载自blog.csdn.net/zhuxipan1990/article/details/51626201