Nginx + FastCgi + Spawn-fcgi + C 架构的服务器环境搭建

1.Nginx

1.1.安装

  1. Nginx 的中文维基 http://wiki.codemongers.com/NginxChs 下载
    Nginx 0.6.26(开发版)(请下载最新版本)
  2. tar zxvf nginx-0.6.26.tar.gz
  3. ./configure,注意了类似checking for *** ... not found项,可能是依赖包没有,则需要安装依赖包
  4. 缺少PCRE,yum install pcre安装。或者去:http://www.pcre.org/
  5. 如果缺少OpenSSL,yum install libssl-dev,或者去:http://www.openssl.org
  6. 如果缺少zlib,可以yum install zlib1g,或者http://www.zlib.net/
  7. make & make install
  8. 建议安装在/usr/local/nginx下

1.2 启动

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

2.FastCGI开发库安装

2.1 安装fastcgi库

下载://www.fastcgi.com/dist/fcgi.tar.gz

./configure

make

make install

2.2 示例程序

#include <fcgi_stdio.h>
int main( int argc, char *argv[] )
{
  while( FCGI_Accept() >= 0 )
  {
      FCGI_printf( "Status: 200 OK\r\n" );
      FCGI_printf( "Content-Type: text/html\r\n\r\n" );
      FCGI_printf( "Hello world in +++++++\n" );
  }
  return 0;
}

编译后的二进制程序为t.cgi

3.spawn-fcgi

先有必要有这样第一个认识:ngxin作为一个webserver,本身并不包含CGI的解释器,需要通过一个中间件【例如php-fpm】来运行CGI。他们之间的模式大致是:

nginx   <--   socket   -->   php-fpm-------->php

那么nginx既然要运行c写的CGI那么也应该有类似php-fpm的东西。baidu, google了下,发现有一个spawn-fcgi的东西。原本是lighttp 内的fastcgi进程管理器

3.1 安装 spawn-fcgi

wget   http://www.lighttpd.net/download/lighttpd-1.4.19.tar.gz
tar zxvf  lighttpd-1.4.19.tar.gz
cd  lighttpd-1.4.19
./configure
make

复制 编译好的spawn-fcgi到 nginx目录,很主要!!!!

cp ./src/spawn-fcgi /usr/local/nginx/sbin/

3.2 启动spawn-fcgi

spawn-fcgi -a 127.0.0.1 -p 7000 -f /home/jiangf/t.cgi

?

4.配置nginx.conf

location ~ \.cgi$
  {
        fastcgi_pass  127.0.0.1:7000;
        fastcgi_index index.cgi;
        fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
        include fastcgi_params;
    }

最后在浏览器中输入

http://192.168.19.103:9990/1.cgi

时间: 2024-10-06 10:46:45

Nginx + FastCgi + Spawn-fcgi + C 架构的服务器环境搭建的相关文章

python服务器环境搭建Flask,uwsgi和nginx

python服务器环境搭建Flask,uwsgi和nginx 环境配置 服务器配置 [部署系统环境Ubuntu] 使用python的Flask框架搭建好网页后台后,便要开始将网站部署到服务器平台了.为了部署python服务器,我选择使用uwsgi和nginx. 使用Nginx和uWSGI来运行Python应用 Nginx Nginx是高效的Web服务器和反向代理服务器,同时并发高,部署简单,内存消耗小,最重要的是,支持uWSGI的uwsgi协议,可以直接使用,一个简单的uwsgi_pass就可以

LNAMP服务器环境搭建(手动编译安装)

LNAMP服务器环境搭建(手动编译安装) 一.准备材料 阿里云主机一台,操作系统CentOS 6.5 64位 lnamp.zip包(包含搭建环境所需要的所有软件) http://123.56.144.36:8001/tools/lnamp.zip 二.确认环境 #确认CentOS YUM安装使用正常 yum clean all yum makecache #确认c gc gc-c++安装正常 yum install -y gc gcc gcc-c++ #确认安装环境需要的软件 yum insta

Mac环境下服务器环境搭建

Mac系统下服务器环境搭建 (1) Apache(Web)服务器 WEB服务器也称为WWW(WORLDWIDE WEB)服务器,主要功能是提供网上信息浏览服务.Web服务器是可以向发出请求的浏览器提供文档的程序 (1) 服务器是一种被动程序:只有当Internet上运行在其他计算机中的浏览器发出请求时,服务器才会响应 (2) 最常用的Web服务器是Apache和Microsoft的Internet信息服务器IIS (3) Web服务器是一台在Internet上具有独立IP地址的计算机 (4) W

Mac环境下 Java服务器环境搭建

Mac环境下,Java服务器环境搭建: 1  使用吧比较新的JDK 下载地址: http://download.oracle.com/otn-pub/java/jdk/8u25-b17/jdk-8u25-macosx-x64.dmg 2  下载Tomcat压缩包(这里使用version_7.xx) 3 下载Eclipse 的Tomcat插件,解压后把文件添加到eclipse文件中plugins目录中: (2.3步骤中的工具下载地址:http://down.51cto.com/data/18883

winows 服务器环境搭建 (碰到了windows服务器,小记一下吧~)

1.连接远程服务器  安装wamp 2.查看wamp 默认端口号是否与对应windows 服务器冲突,如果冲突,则改之 WAMP装好之后默认的端口是80,但是这个80端口呢,可以热门端口啊,迅雷,IIS都挺喜欢,在WIN7下本来还有1个进程也点80,让人伤脑筋啊,所以把它改掉,方法如下: 一.修改APACHE的监听端口 1.在界面中选apache,弹出隐藏菜单选项,打开配置文件httpd.conf;  2.找到Listen 80 和 ServerName localhost:80; 3.将80改

NGINX+PHP+MYSQL服务器环境搭建

这条命令是配置vim的,请确保你能访问github wget -qO- https://raw.github.com/ma6174/vim/master/setup.sh | sh 说明有一些小问题,配置过程中很容易自己修改,自己注意 准备篇: CentOS 7.0系统安装配置图解教程 http://www.centoscn.com/image-text/setup/2014/0724/3342.html 一.配置防火墙,开启80端口.3306端口 CentOS 7.0默认使用的是firewal

网站从无到有--个人(第一次)搭建。服务器环境搭建 对大家有帮助那就最好-第一次发

最近想搭建一个个人的网站:但自己从来没有接触过就上网收,然后自己总结了:记录下来. ----自己选的阿里云的,注册账号什么的. 1/ 首先买一个域名:.com的比较贵(我选的.com的)其他的貌似都比较便宜 建议.com 或.cn..xyz-其他的没怎么了解--貌似国内不行 2/阿里云上买一个服务器:自己用的学生的身份买的 加上优惠券 3个月共9.9元 --! 3/然后就是备案了.首先填写初次备案的信息(由于楼主是重庆的照片的那个自己用平板签的字,很快很方便).然后一天内就会有电话回馈.告诉你要

KBEngine服务器环境搭建

1.概要及环境 KBEngine是一款开源服务端引擎(中文官网http://kbengine.org/cn/),能够在Linux.Windows下部署,为了学习方便,我们在本机Windows下进行服务器环境的搭建. 1)服务端源代码 https://github.com/435886030/kbengine 2)环境:WIN7 + VS2013 (建议使用2013,其它版本可能会有些工程设置报错) 2.构建服务端环境 1.打开kbengine\kbe\src\kbengine_vs120.sln

VPN服务器环境搭建

一.VPN服务器环境说明 操作系统:CentOS release 6.4 (Final) 本地网卡: 复制代码 代码如下: # ifconfig em1 Link encap:Ethernet HWaddr 78:2B:CB:42:C3:68 inet addr:192.168.123.201 Bcast:192.168.123.255 Mask:255.255.255.0 em2 Link encap:Ethernet HWaddr 78:2B:CB:42:C3:6A inet addr:10