nginx + fastcgi + c/c++

  • A+
所属分类:Nginx
又拍云upyun

使用php写后端程序的例子很多,用c/c++的比较少。

本文采用nginx,spawn,fastcgi++来构建一个基于cgi的web程序。
由于fastcgi++依赖于boost库,我们先来装boost库

Linux下编译boost

1.编译前的准备工作

2.下载安装包并解压

编译安装

测试boost库是否可以使用,boost编译完成后运行程序报错,

最开始以为是bzip2没装上,折腾了许久也没搞定,最后我发现boost的官方文档写着gcc4.4.7,而我本地的编译器是4.4.6,之后我把gcc升级到4.8重新编译通过。

redhat6.3升级gcc4.8.0编译安装方法:

1.下载源码并解压

2.下载编译所需的依赖项

3.建立编译输出目录

4.进入此目录,执行以下命令,生成makefile文件

5.执行以下命令进行编译,编译时间比较长

6.安装

安装完成后查看版本

重新执行boost的编译,编写一个例子测试是否成功

编译运行

spawn-fcgi安装

fastcgi安装

启动fastcgi程序

如果启动报错,可以加参数-n来看具体原因。

我的报错如下,因为升级了gcc4.8,没有升级libstdc++.so.6导致。

/usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found错误的解决

没有3.4.15

连接到libstdc++.so.6新的库

再次启动fastcgi程序

程序会在前台运行

检查程序是否正常运行

配置nginx,增加

重新加载ngnx的配置

打开浏览器,访问http://192.168.18.11/utf8-helloworld.fcgi,你会看到。

参考

http://www.cnblogs.com/skynet/p/4173450.html
http://www.cnblogs.com/wanghetao/p/3934350.html
http://www.nongnu.org/fastcgipp/doc/2.1/index.html

weinxin
微信公众号
扫一扫关注运维生存时间公众号,获取最新技术文章~

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:1   其中:访客  1   博主  0

    • 匿名 9

      丰富内容