400 028 6601

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

Nginx中的FastCGI怎么配置优化

这篇“Nginx中的FastCGI怎么配置优化”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Nginx中的FastCGI怎么配置优化”文章吧。

我们提供的服务有:成都网站设计、做网站、微信公众号开发、网站优化、网站认证、子洲ssl等。为近1000家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的子洲网站制作公司

fastcgi:

fastcgi是从cgi发展改进而来的。传统cgi接口方式的主要缺点是性能很差,因为每次http服务器遇到动态程序时都需要重新启动脚本解析器来执行解析,然后结果被返回给http服务器。这在处理高并发访问时,几乎是不可用的。另外传统的cgi接口方式安全性也很差,现在已经很少被使用了。

fastcgi接口方式采用c/s结构,可以将http服务器和脚本解析服务器分开,同时在脚本解析服务器上启动一个或者多个脚本解析守护进程。当http服务器每次遇到动态程序时,可以将其直接交付给fastcgi进程来执行,然后将得到的结果返回给浏览器。这种方式可以让http服务器专一地处理静态请求或者将动态脚本服务器的结果返回给客户端,这在很大程度上提高了整个应用系统的性能。

nginx不支持对外部程序的直接调用或者解析,所有的外部程序(包括php)必须通过fastcgi接口来调用。fastcgi接口在linux下是socket,(这个socket可以是文件socket,也可以是ip socket)。为了调用cgi程序,还需要一个fastcgi的wrapper(wrapper可以理解为用于启动另一个程序的程序),这个wrapper绑定在某个固定socket上,如端口或者文件socket。当nginx将cgi请求发送给这个socket的时候,通过fastcgi接口,wrapper接纳到请求,然后派生出一个新的线程,这个线程调用解释器或者外部程序处理脚本并读取返回数据;接着,wrapper再将返回的数据通过fastcgi接口,沿着固定的socket传递给nginx;最后,nginx将返回的数据发送给客户端,这就是nginx+fastcgi的整个运作过程。详细的过程,如图所示。

Nginx中的FastCGI怎么配置优化

例子:

Nginx中的FastCGI怎么配置优化

nginx中fastcgi参数的优化配置实例

在配置完成nginx+fastcgi之后,为了保证nginx下php环境的高速稳定运行,需要添加一些fastcgi优化指令。下面给出一个优化实例,将下面代码添加到nginx主配置文件中的http层级。

fastcgi_cache_path /usr/local/nginx/fastcgi_cache levels=1:2 keys_zone=test:10m inactive=5m; 
fastcgi_connect_timeout 300; 
fastcgi_send_timeout 300; 
fastcgi_read_timeout 300; 
fastcgi_buffer_size 64k; 
fastcgi_buffers 4 64k; 
fastcgi_busy_buffers_size 128k; 
fastcgi_temp_file_write_size 128k; 
fastcgi_cache test; 
fastcgi_cache_valid 200 302 1h; 
fastcgi_cache_valid 301 1d; 
fastcgi_cache_valid any 1m;

上述代码的含义:

以上就是关于“Nginx中的FastCGI怎么配置优化”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注创新互联行业资讯频道。


文章题目:Nginx中的FastCGI怎么配置优化
网站地址:http://www.bluegullmedia.com/article/pgcioe.html

其他资讯

让你的专属顾问为你服务

0.0533s