Nginx 之fastcgi常用配置項說明


在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 "\(request_method://\)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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM