2024年6月11日发(作者:)

nginx+spawn-fcgi+fastcgi

nginx是web服务器。

spawn-fcgi是fastcgi进程管理器,用于启动fcgi程序。

fastcgi程序是基于fcgi库的cgi程序,常驻内存供调用,避免了cgi每次被调用时必须配加载

执行的缺点。

nginx与指定ip和端口的fcgi程序通信,通信必须符合fcgi相关的协议。fcgi程序监听

指定端口,nginx配置文件对某个web 客户端请求指定一个fcgi程序(ip,端口和程序名)。

fcgi程序由spawn-fcgi管理器启动,启动时指定监听端口已经fcgi服务器进程数。

1. 安装nginx,通过源码安装包安装,安装路径指定为/opt/nginx

这个脚本简化了安装过程。它先检查安装nginx的依赖包,并构建依赖环境。然后编译

安装到指定路径

2. 安装spawn-fcgi,通过源码安装包安装,安装路径制定为/opt/spawn-fcgi

3. 安装fcgi库,源码安装包:,不指定路径安装,静态库文件libfcgi.a以及

动态库文件将安装到默认目录:/usr/local/lib,头文件安装到/usr/local/include/目录

4. 修改nginx的配置文件

这个配置文件中配置了nginxfuwq将调用的fcgi程序

5. 启动nginx

cd /opt/nginx/sbin

./ nginx

6. 编写基于fcgi库的fastcgi程序

7. 编译,-lfcgi指定链接库

gcc –o tiny_fcgi tiny_cgi.c -lfcgi

8. 启动fasctcgi程序:

sudo ./spawn-fcgi -a 127.0.0.1 -p 20003 -F 1 -u www-data -f /opt/fcg-bin/tiny_fcgi

9. 测试fcgi程序效果

在浏览器中输入127.0.0.1,即可看到fcgi程序的输出,刷新一次输出又不同

tiny_fcgi.c

10.