学习Python有一段时间了,在对语法基本了解的基础上,想进行一些较高程度的编程训练。在网上找到了www.runoob.com/python/python-tutorial.html教程,于是便开始了我的Python进阶训练。
看到了CGI是关于网络的,满心欢喜,但是查找过后发现CGI已是多年前流行的技术,但也不灰心,就从这个开始吧。
先是在虚拟机Ubuntu14.04系统中安装的Apache,很简单sudo apt-get install apache2,详细的就百度。装好之后完全不知道这东西怎么用,查找之后发现是使用文件配置策略的(习惯了Windows还真不容易绕过圈)。网站上给出的教程是缩略版的,关于CGI软件的启动过程没有讲到,下面记录了我所有的过程:
1、配置CGI程序
使用root权限创建并编辑httpd.conf文件,vi /etc/apache2/mods-enabled/httpd.conf
LoadModule cgid_module modules/mod_cgid.so
ScriptAlias /cgi-bin/ /var/www/html/cgi-bin/
<Directory ''/var/www/html/cgi-bin">
AllowOverride None
Options ExecCGI
Order allow,deny
Allow from all
</Directory>
AddHandler cgi-script .cgi .pl .py
编辑后保存并退出,此时需要重新启动apache,sudo /etc/init.d/apache2 restart
若此时提示找不到mod_cgid.so文件的错误,则键入
sudo mkdir /etc/apache2/modules
sudo cp /usr/lib/apache2/modules/mod_cgid.so /etc/apache2/modules/
重新启动apache
2、编写hello.py程序
vi /var/www/html/cgi-bin
#!/usr/bin/python
# -*- coding: UTF-8 -*-
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>'
文件保存后,修改权限为755,
chmod 755 hello.py
3、在浏览器中输入地址http://localhost/cgi-bin/hello.py,显示如下:
感谢runoob菜鸟教程!