2013年6月1日星期六

C/C++ CGI

 发信人: ichigo (草莓 ||冷艳高贵傲娇受,腹黑毒舌萝莉萌), 信区: Joke
标  题: C语言的cgi库
发信站: 天辽地大BBS (Fri May 18 21:14:50 2012), 站内
 
C语言的cgi库
By darklowly at 5 分钟前, 18 次点击  
除了libcgi和cgic这两个C语言的cgi库以外,还有其他C语言的cgi库吗?
加入收藏  Tweet  Weibo  
 
 
1 回复  |  直到 2012-05-18 21:08:11 PM 感谢回复者       1freefcw   1 分钟前
疼啊,用c写cgi是我这辈子最坑爹的事情
--
上得了厅堂,下得了厨房,写得了代码,斗得过流氓。
 
心理承受能力低者请绕行,本宫回文一概不考虑被引文者身份以及本站立场。
 
不爽请直接移步投诉区喝茶,谢谢。
 
 
※ 来源:·天辽地大BBS bbs.lnu.edu.cn·[FROM: 211.99.222.*]

 

C/C++ CGI

闲来没事,玩玩CGI,先搞清楚什么是CGI,下面是原文定义:
The Common Gateway Interface (CGI) is a standard for external gateway programs to interface with information servers, such as HTTP servers.
简单地来说,CGI就是一种用来和HTTP等信息服务器来交互的一种接口。
要进行CGI编程,需要配置一下Web服务器,这里以Apache2.2为例进行说明,关键有两个地方:
(1)ScriptAlias /cgi-bin/ E:/Apache2.2/cgi-bin/
(2)<Directory E:/Apache2.2/cgi-bin/>
AddHandler cgi-script .cgi .pl
</Directory>
上面,(1)中指定cgi所在的根目录,(2)指定cgi文件的扩展名。详细的配置可以参考:http://www.phpx.com/man/Apache-2/howto/cgi.html
CGI是一种接口,它与Web服务器之间的通信,可以通过各种语言来实现,比较常见的是perl和shell脚本,不过其它语言的也很多。在这里我选择我比较熟悉的c/c++语言来进行说明。下面对上述配置好的环境做一个简单的测试:
写好的代码:
1
2
3
4
5
6
7
8
9
#include<iostream> 
 
using namespace std;
 
int main()
{
 cout < < "Content-type: text/html\n\n";
 cout << "This is a test of CGI" << endl;
}
运行结果:
1
由上面的结果可以看出,运行成功了!CGI就是这么简单,万事开头难,只要有了上面的介绍,遇到问题的时候去网上搜一下,一切都能搞定了。下面是两个开源的c/c++ cgi库的地址,做具体的应用的时候,可以用它们提供的API来实现:
cgic是一个c cgi库,cgicc是一个c++ cgi库,具体使用说明,可以参考它们的文档,它们的文档都比较详细的。

没有评论:

发表评论