CGI(Common Gateway Interface,通用网关接口)是网络服务器能够将查询传递到专门的程序中而且在网页上显示结果的标准机制。Apache等服务器默认是支持CGI的,只须要修改一下配置文件,有时甚至不须要修改,只须要查看下配置文件中CGI程序被放置在何处,而后只须要在对应的CGI目录中放入你要执行的CGI程序就能够啦。apache
默认的状况下,也就说你的机器的80端口没有被占用的状况下,其实你须要修改的东西特别少,甚至几乎是不须要动Apache的配置文件的。这样分两种状况来讲明配置是如何进行的:浏览器
cd /etc/apache2
进入到Apache的配置文件夹下,会看到site-available目录,这下面存放的是关于本机上配置的虚拟主机的配置信息,之前貌似不少信息都是配置在httpd文件里面的,可是如今好像主要是将这些配置信息配置到site-available目录下的文件里,打开下面的default文件,会看到ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory>
相似下面的配置,配置所示,你的CGI程序应该放到/usr/lib/cgi-bin目录下,固然,不一样的机器安装apache的目录可能不同,这里也就未必都是相同的,根据本身的机器的具体状况而定。这个信息若是有的话,其实,整个Apache支持CGI的配置就完成啦。服务器
/etc/apache2/ports.conf
文件中,将里面的80修改成其余的你的主机未被占用的端口便可。而后须要修改下/etc/apache2/sites-available
下面的default文件中的端口号,这样修改完成后,作和上面的1相同的操做便可。重启一下Apache,使得配置生效。可使用service apache2 restart
或者/etc/init.d/apache2 restart
来从新启动Apache服务器。网络
以后只须要在你的cgi-bin目录下添加可执行的脚本文就能够啦,固然用C语言写的可执行文件也是能够的,好比你能够用一下cgic来试验一下。ide
当写完本身的cgi程序后,打开一个浏览器访问 http://你的服务器地址:端口号/cgi-bin/你的cgi程序 就能够啦,若是出错,能够查看下错误日志,错误日志的存放地点能够到/etc/apache2/envvars
中查看。通常主要是两个错误:1.权限问题 2.你的代码确实有问题。rest
基本确保了这两个问题不存在啦,就能够顺利的执行你的CGI程序啦!日志