CGI Linux下搭建环境
一、简述
记--在Ubuntu系统搭建CGI编程测试环境,服务器使用apache,还可以使用其它服务器如lighttpd,boa,nigx。
二、安装apache
命令:sudo apt-get install apache2 (注:该方式为在线安装,可先设置软件源为国内;可先下载离线包或者是源码包进行离线/手动安装)
查看apache版本:apache2 -v
在浏览器输入localhost://index.html 会看到Apache的默认的欢迎页。如下:
三、配置apache
3.1 修改/etc/apache2/sites-enabled/000-default.conf
命令:sudo vi /etc/apache2/sites-enabled/000-default.conf
修改:将#Include conf-available/serve-cgi-bin.conf前面的#号去掉,去掉之后如下:
3.2 修改/etc/apache2/conf-available/serve-cgi-bin.conf
执行:sudo vi /etc/apache2/conf-available/serve-cgi-bin.conf
修改内容:AddHandler cgi-script cgi
3.3 修改/etc/apache2/mods-available/cgid.load
执行:sudo vi /etc/apache2/mods-available/cgid.load
修改内容:添加AddHandler cgi-script cgi
3.4 添加链接,执行:sudo ln -s /etc/apache2/mods-available/cgid.load /etc/apache2/mods-enabled/cgid.load
3.5 重启apache:sudo /etc/init.d/apache2 restart
四、编辑CGI程序
这里使用C语言编写。
代码如下:
#include
int main(void)
{
printf("CGI 程序测试!!!\n");
return 0;
}
编译:gcc cgi.c -o test.cgi
五、测试
将test.cgi程序放到/usr/local/cgi-bin/下,如果没有执行权限就添加可执行权限,chmod 755 test.cgi
6.1 直接使用本机路浏览器访问http://localhost//cgi-bin/test.cgi 或http://127.0.0.1//cgi-bin/test.cgi
6.2 局域网内访问,在windows主机访问192.168.159.128//cgi-bin/test.cgi (192.168.159.128是虚拟机的IP地址)
注:如果访问不了请尝试关闭防火墙。
六、总结
6.1 安装apache时遇到不能安装问题:Could not get lock /var/lib/dpkg/lock-frontend
找到apt-get各个进程的pid:ps afx | grep apt
使用sudo kill -9 pid将进程结束
删除/var/lib/dpkg/lock-frontend文件:sudo rm /var/lib/dpkg/lock-frontend
然后执行:sudo apt-get update 和 sudo apt-get uograde
然后再尝试安装
6.2 服务器的选择
有的服务器每次会启动新的CGI进程,lighttpd和apache有CGI进程池管理,相对其它服务器占用更少资源,响应更快。