Ubuntu下Apache2的CGI简单配置
转载: http://blog.csdn.net/a623891391/article/details/47170355
1.首先“ cd /etc/apache2 ” 进入到apache2的目录里输入ls查看,可以看到这两个文件夹 ” mods-enabled “ 和 ” mods-available “, 其中 ” mods-enabled “ 为常用的(也就是默认开启的), ” mods-available “为不常用的(也就是默认不开启)
2. cd /mods-available " 进入该目录,输入 " ls *cgi*.* " 查找带cgi的文件,可以找到 " cgid.conf ", "cgid.load ", " cgi.load ", " proxy_fcgi.load ", " proxy_scgi.load ", 其中 "proxy_fcgi.load ", " proxy_scgi.load " 我们暂不用,只需要前三个 " cgid.conf ", " cgid.load ", " cgi.load " 就可以了。
cgi.load的内容如下:
LoadModule cgi_module /usr/lib/apache2/modules/mod_cgi.so //默认有则不需要加 AddHandler cgi-script .cgi .pl .py .sh // 我们加入这一句,使CGI支持 perl和python 和shell脚本
3. 接下来,使用 " ln -s *.* *.* " 将这三个文件软链接到 " mods-enabled " 目录下
1 ln -s /etc/apache2/mods-available/cgid.conf /etc/apache2/mods-enabled/cgid.conf 2 3 ln -s /etc/apache2/mods-available/cgid.load /etc/apache2/mods-enabled/cgid.load 4 5 ln -s /etc/apache2/mods-available/cgi.load /etc/apache2/mods-enabled/cgi.load
4. 修改默认的cgi-bin的路径
在/etc/apache2/conf-enabled下面有一个名为serve-cgi-bin.conf软连接,指向的是/etc/apache2/conf-available/serve-cgi-bin.conf, 修改这个文件:
1 <IfModule mod_alias.c> 2 <IfModule mod_cgi.c> 3 Define ENABLE_USR_LIB_CGI_BIN 4 </IfModule> 5 6 <IfModule mod_cgid.c> 7 Define ENABLE_USR_LIB_CGI_BIN 8 </IfModule> 9 10 <IfDefine ENABLE_USR_LIB_CGI_BIN> 11 ScriptAlias /cgi-bin/ /var/www/cgi-bin/ 12 <Directory "/var/www/cgi-bin"> 13 AllowOverride None 14 Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch 15 Require all granted 16 </Directory> 17 </IfDefine> 18 </IfModule>
将cgi-bin设置为/var/www/cgi-bi
5. 输入 " sudo /etc/init.d/apache2 restart " 重启apache服务
6、用python实现的cig文件/var/www/cgi-bin/simple3.cgi
1 #!/usr/bin/env python3 2 3 import cgi 4 import cgitb 5 6 cgitb.enable() 7 8 form = cgi.FieldStorage() 9 name = form.getvalue('name', 'world') 10 11 print("""Content-type: text/html 12 13 <html> 14 <head> 15 <title> Greeting Page </title> 16 </head> 17 18 <body> 19 <h1>Hello %s !</h1> 20 21 <form action='simple3.cgi'> 22 Change Name <input type='text' name='name' /> 23 <input type='submit' /> 24 </form> 25 </body> 26 </html> 27 """ % name)
7. 测试
在浏览器中输入 http://localhost/cgi-bin/simple3.cgi
完。