最近在菜鸟教程上学习Python,在学到Python3 CGI编程时,自己实操演练了一下,发现对于没有基础的人来说,教程上写的还不够细,在演练的过程中需要自己搜索各种答案,所幸最后做出来了。

 

1、Windows虚拟机Ubantu16.04安装apache2

 安装过程中询问是否允许占用磁盘空间,输入Y,回车

 安装完成

2、Windows系统打开浏览器,地址栏中输入虚拟机IP,测试apache2是否安装成功

出现此页面表示安装成功

2、配置cgi

 (1)新建cgi-bin文件夹,用于存放cgi脚本,路径为/var/www/cgi-bin

(2)打开sudo vi /etc/apache2/mods-enabled,配置mime.load文件

 

 添加第二行

 (3)打开sudo vi /etc/apache2/conf-enabled,配置serve-cgi-bin.conf

 打开后修改cgi路径,并添加AddHandler cgi-script .cgi .pl .py .sh

 (4)重启apache,sudo /etc/init.d/apache2 restart

 (5)创建hello.py文件,并设置文件权限为755

#!/usr/bin/python3

import codecs, sys
sys.stdout = codecs.getwriter('utf8')(sys.stdout.buffer)

print ("Content-type:text/html")
print ()                             # 空行,告诉服务器结束头部
print ('<html>')
print ('<head>')
print ('<meta charset="utf-8">')
print ('<title>Hello Word - 我的第一个 CGI 程序!</title>')
print ('</head>')
print ('<body>')
print ('<h2>Hello Word! 我是来自菜鸟教程的第一CGI程序</h2>')
print ('</body>')
print ('</html>')

注意不能少了第2行、第3行,虽然目前还不知道为什么

 (6)打开浏览器,在地址栏中输入hello.py的路径,即可显示出python cgi脚本想要输出的内容

 

 我这里是在虚拟机ubantu中运行的apche,在物理机windows系统打开的浏览器,浏览器地址栏中的IP是我虚拟机的地址。

最后:如果配置好后仍不能实现预期结果,可以将apache卸载后重装,再来一次。

更多推荐

菜鸟教程:Python3 CGI编程实操演练-Ubantu