我想开始开发CGI,但我对此很新

时间:2009-09-11 23:51:59

标签: c++ visual-studio cgi fastcgi

我想用C ++开发我的下一个Web项目作为FastCGI,但我不知道如何开始和谷歌对此不是很友好。 我真的不太了解fastCGI或其他使cgi持久化的库...试图阅读一些东西,但它似乎在Linux中使用所有那些.configure Makefiles等......

任何人都可以给我一个基本的教程但有点详细吗? 我有windows vista sp1,IIS配置为接受CGI,我也有Visual Studio 2008和DevC ++。

我从fastcgi.com下载了该套件,但很难理解它的基础知识。 使用fastcgi(我可以使用持久代码的任何库)构建hello世界的一个真正简单的方法将是非常好的。

基本知识,严肃地说,就像我不知道我是否可以将fastcgi项目中的文件包含到我的项目中并将它们编译在一起,如果这将适用于我的IIS。 即使这样可行,我也不知道我应该使用fastCGI开发工具包构建哪一个,有一个带有文件的cgi-fcgi和libfcgi文件夹,并且几乎所有文件夹中都放置了Makefile -_-“......

我知道C ++中的CGI很难开发,因为它不使用模板,因为你必须处理内存管理...但我想尝试一下。 我厌倦了脚本语言及其限制/限制。

对不起我的英语,我希望我很清楚。

谢谢, 乔

3 个答案:

答案 0 :(得分:3)

我不建议您在IIS中使用FastCGI。 FastCGI的IIS支持非常有限 - 它只允许通过管道进行通信,只有一个请求传递给进程。

FastCGI已添加到IIS,以某种方式将PHP和其他几种技术连接到IIS。

如果您想用C ++创建Web应用程序,我建议您使用非MS开发环境。

关于编程。使用C ++ for web的工具很少,特别是对于MS环境:

  1. 您可以直接使用libfcgi并自己解析查询 - 这是一项非常艰巨的工作,但对于非常简单的任务,这很好。
  2. 您可以使用某些更高级别的库,例如CgiCC - 这对于表格,Cookie等基本内容很有用,但它仍然非常有限。
  3. 您可以使用完整的MVC网络框架,例如CppCMS。但出于此目的,我不建议您在Windows环境中工作。
  4. 您也可以尝试使用Wt“GUI-over-Web”开发风格。

答案 1 :(得分:2)

您可能希望查看cgicFastCGIWt等库,而不是自己编写CGI代码。这些库中的每一个都有一个非常容易使用的基本API - 就像任何简单的库一样。

答案 2 :(得分:0)

如果您认真想要这样做,那么我建议您查看CppCMS,一个C ++ Web应用程序框架。如果您发现自己真的不想要任何类型的框架,请查看fastcgi.com处的文档。那里有一个C教程,您可以用C ++ std lib调用替换所有C调用(主要是IO)。