在LNMP环境中,我们都知道nginx如果要解析php脚本语言,就必须通过配置fastcgi模块来提供对php支持,那么在配置fastcgi的时候,关于fastcgi配置项的值应该怎么设置才能让其发挥出更出色的性能呢,下面就讲讲关于nginx模块中fastcgi这部分通用参数介绍

1.1 fastcgi_connect_timeout
配置语法: fastcgi_connect_timeout 时间(单位为s)

默认值: fastcgi_connect_timeout 60s

配置区域: http server location

配置项说明: 指定nginx与后端fastcgi server连接超时时间

1.2 fastcgi_send_timeout
配置语法: fastcgi_send_timeout 时间(单位为s)

默认值: fastcgi_send_timeout 60s;

配置区域: http server location

配置项说明:指定nginx向后端传送请求超时时间(指已完成两次握手后向fastcgi传送请求超时时间)

1.3 fastcgi_read_timeout
配置语法: fastcgi_read_timeout 时间(单位为s)

默认值: fastcgi_send_timeout 60s;

配置区域: http server location

配置项说明:指定nginx接受后端fastcgi响应请求超时时间 (指已完成两次握手后nginx接受fastcgi响应请求超时时间)

1.4 fastcgi_buffer_size
配置语法: fastcgi_buffer_size size (单位为k,一般为4的整数倍)

默认值: fastcgi_buffer_size 4k|8K

配置区域: http server location

配置项说明:指定nginx读取fastcgi响应第一部分需要用多大的缓冲区,这个值表示将使用一个64kb的缓冲区响应第一部分应答(应答头)可以设置为fastcgi_buffers缓存区大小

1.5 fastcgi_buffers
配置语法: fastcgi_buffers num size (单位为k,一般为4的整数倍)

默认值: fastcgi_buffers 8 4k|8K

配置区域: http server location

配置项说明: 指nginx需要用多大的缓冲区缓冲fastcgi的应答请求(整个应答),如果一个php脚本所产生的页面大小为256kb,那么会分配4个64kb缓冲区来缓存,如果页面大于256kb,那么大于256kb的部分会缓存到fastcgi_temp指定的路径中,但是因为内存中数据处理远快于磁盘, 所以这个值应该为站点中php所产生的页面大小的中间值, 如果站点大部分php脚本产生的页面为:256kb, 那么可以设置成成"8 16k 4 64k"

1.6 fastcgi_busy_buffers_size
配置语法:fastcgi_busy_buffers_size size (单位为K,一般为fastcgi_buffers值的2倍)

默认值: fastcgi_busy_buffers 8k|16K

配置区域: http server location

配置项说明:整个数据请求需要多大的缓存区,建议设置为fastcgi_buffers值的两倍

1.7 fastcgi_temp_file_write_size
配置语法:fastcgi_temp_file_write_size size (单位为K,一般为fastcgi_buffers值的两倍)

默认值: fastcgi_temp_file_write_size 8k|16K

配置区域: http server location

配置项说明:写入缓存文件使用多大的数据块,默认值是fastcgi_buffer值的2倍

1.8 fastcgi_temp_path
配置语法:fastcgi_temp_path path (临时文件存放路径)

配置区域: http server location

配置项说明:fastcgi临时文件存放路径

注:不过这一配置项常常不会用到

1.9 fastcgi_cache_path
配置语法:fastcgi_cache_path path [levels=levels] [use_temp_path=on|off] keys_zone=name:size [inactive=time] [max_size=size] [loader_files=number] [loader_sleep=time] [loader_threshold=time] [purger=on|off] [purger_files=number] [purger_sleep=time] [purger_threshold=time];

配置区域: http server location

配置项说明:定义fastcgi缓存的路径及其他设置

1.10 fastcgi_cache
配置语法:fastcgi_cache zone |off (其中zone对应fastcgi_cache_path 中zone名称)

默认值: fastcgi_cache off

配置区域: http ,server, location

配置项说明:开启fastcgi_cache并为其定义一个名称,可以防止nginx 502错误,降低cpu负载,不过也会引起其他问题,根据需求来选择

1.11 fastcgi_cache_valid
配置语法:fastcgi_cache_valid {code} time

配置区域: http server location

配置项说明:为指定的应答代码指定缓存时间

例如

fastcgi_cache_valid 200 302 1h; fastcgi_cache_valid any 1m;
上面意思就是对于状态码为200 302的网页缓存1小时,其他页面缓存1分钟

1.12 fastcgi_cache_key
配置语法:fastcgi_cache_key value

配置区域: http server location

配置项说明:以某个值为key,Nginx会取这个key的md5作为缓存文件 如果设置了缓存哈希目录,Nginx会从后往前取相应的位数做为目录

例如:

fastcgi_cache_key "requestmethod://requestmethod://host$request_uri";

1.13 fastcgi_cache_min_uses
配置语法:fastcgi_cache_min_uses
配置区域: http server location

配置项说明:URL至少经过多少次请求将被缓存

1.14 fastcgi_cache_use_stale
配置语法:fastcgi_cache_use_stale error | timeout | invalid_header | updating | http_500 | http_503 |http_403 | http_404 | off ...;

默认值: fastcgi_cache_use_stale off

配置区域: http server location

配置项说明:对一些错误提示code,nginx会使用到fast_cache缓存

以上就是nginx fastcgi模块的一些基本配置参数说明,如想要仔细了解关于nginx的反向代理相关设置请访问http://nginx.org/en/docs/http/ngx_http_fastcgi_module.html

 

未修改之前出现404或者504;改完之后可以下载了!当然也有其他方案解决:比如你可以发送请求让接口处理数据,然后给个定时器检测处理状态,不用请求一直等待的;或者使用脚本生成等

 

 

声明:请仔细阅读【免责条款】 ******各位玩家注意,在一些文件里有各种广告或联系方式,请谨慎自行斟酌责任由使用者自身承担与本站无关****** 本站部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责。 若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。 如果本站有侵犯、不妥之处的资源,请联系我们。将会第一时间解决! 本站部分内容均由互联网收集整理,仅供大家参考、学习、测试,不存在任何商业目的与商业用途,想要获得更好的游戏及软件使用体验,请购买正版! 本站提供的所有资源仅供参考学习使用,版权归原著所有,禁止下载本站资源参与任何商业和非法行为,请于24小时之内删除 通过使用本站内容随之而来的风险以及法律责任与本站无关,所承担的法律责任由使用者自身承担。 本站除了客服以外的联系方式均属于第三方请自行斟酌【免责条款】 采用 知识共享署名-相同方式共享 4.0  国际许可协议 进行许可。遵守国家互联网管理办法,电信条例等相关规定 侵删联系邮箱 1816812304@qq.com