nginx + fastcgi + c/c++ 程序 部署
部署环境 centos7.4
1.安装nginx,查看网上的安装教程安装即可;
2.安装fastcgi
yum install fcgi-devel
3.安装spawn-fcgi
下载地址http://redmine.lighttpd.net/versions/21
下载最新版本解压后按照下面的步骤执行
./configure
make
make install(须要root权限)
复制 编译好的spawn-fcgi到 nginx文件夹(须要root权限)。非常主要!!。。
cp ./src/spawn-fcgi /usr/local/nginx/sbin/
4.测试用例编写
#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! [from fcgi, in C Lan]");
}
return 0;
}
编译gcc -o test test.cpp -L/usr/local/lib/ -lfcgi
修改test可执行文件名为 test.cgi
5.编写运行脚本
#!/bin/bash
DESTDIR=.
HOST='127.0.0.1'
PORT='7000'
PROCESSNAME='test.cgi'
sudo killall -9 $PROCESSNAME
echo "=====killed====="
RESTART="sudo /usr/local/nginx/sbin/spawn-fcgi -a $HOST -p $PORT -f $DESTDIR/$PROCESSNAME -F 1"
echo $RESTART
$RESTART
echo "======done======"
ps -ef | grep $PROCESSNAME
保存脚本名称为span-fcgi.sh
chmod u+x span-fcgi.sh --给脚本添加可执行权限
执行脚本: ./span-fcgi.sh
6.nginx.conf配置文件修改
在http节点的子节点-"server节"点中下添加如下配置信息
图中的ssl模块的配置可忽略
7.在浏览器中输入http://192.168.1.21:7001/tts/test.cgi
浏览器中输出