首页 > 代码库 > ubuntu 下使用CGI c语言 编写helloworld
ubuntu 下使用CGI c语言 编写helloworld
从根本上说,CGI 就是HTML表单与服务端脚本之间的接口。
自己可以百度了一些cgi知识:给出链接报错。那就自己Google哈
也因为工作需要,所以来学习了下。
一、安装及配置apache服务器
安装apache2服务器
#sudo apt-get install apache2
#sudo apt-get install apache2
配置apache2服务器
配置文件位于 /etc/apache2/sites-enabled/000-default
用vi打开配置文件:
#sudo vi /etc/apache2/sites-enabled/000-default
修改其中两句为:
DocumentRoot /var/www/html
ScriptAlias /cgi-bin/ /var/www/html/cgi-bin/
注意其中空格的问题。
配置文件位于 /etc/apache2/sites-enabled/000-default
用vi打开配置文件:
#sudo vi /etc/apache2/sites-enabled/000-default
修改其中两句为:
DocumentRoot /var/www/html
ScriptAlias /cgi-bin/ /var/www/html/cgi-bin/
注意其中空格的问题。
这两个目录你可以自己设定,并且设定的目录要真实存在,如果不存在就 mkdir 出一个。
DocumentRoot后面是放HTML文件的目录。
ScriptAlias后面是指定/cgi-bin/连接到/var/www/html/cgi-bin/ ,也就是在这个目录中的文件均被认作是cgi程序。
例如如果浏览器中访问 http://127.0.0.1/cgi-bin/hello.cgi 就可以执行cgi-bin下的hello.cgi
配置完保存。
DocumentRoot后面是放HTML文件的目录。
ScriptAlias后面是指定/cgi-bin/连接到/var/www/html/cgi-bin/ ,也就是在这个目录中的文件均被认作是cgi程序。
例如如果浏览器中访问 http://127.0.0.1/cgi-bin/hello.cgi 就可以执行cgi-bin下的hello.cgi
配置完保存。
个人觉得也可以不配置,给出上面的原因,只是更好理解。
重启apache2:
#sudo /etc/init.d/apache2 restart
#sudo /etc/init.d/apache2 restart
二 编写helloworld
进入目录:aries@ubuntu:~$ cd /usr/lib/cgi-bin/
编写:aries@ubuntu:/usr/lib/cgi-bin$ sudo hello.c
aries@ubuntu:/usr/lib/cgi-bin$ sudo gcc -o hello.cgi hello.c
ok 在自己电脑上,运行:
aries@ubuntu:/usr/lib/cgi-bin$ ./hello.cgi
Content-Type: text/html
Hello, world
aries@ubuntu:/usr/lib/cgi-bin$ ./hello.cgi
Content-Type: text/html
Hello, world
出现了 helloworld 表示 ok。
2 浏览器 输入:http://localhost/cgi-bin/hello.cgi
ok 结束/
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。