nginx筆記之fastcgi_param解釋
阿新 • • 發佈:2018-12-26
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;#指令碼檔案請求的路徑
注意:$document_root 和 $fastcgi_script_name 之間沒有 /。原本Nginx只有「fastcgi_params」,後來發現很多人在定義「SCRIPT_FILENAME」時使用了硬編碼的方式,於是為了規範用法便引入了「fastcgi.conf」。
不過這樣的話就產生一個疑問:為什麼一定要引入一個新的配置檔案,而不是修改舊的配置檔案?這是因為「fastcgi_param」指令是
陣列型的,和普通指令相同的是:內層替換外層;和普通指令不同的是:當在同級多次使用的時候,是新增而不是替換。
換句話說,如果在同級定義兩次「SCRIPT_FILENAME」,那麼它們都會被髮送到後端,這可能會導致一些潛在的問題,
為了避免此類情況,便引入了一個新的配置檔案。
參考:FASTCGI_PARAMS VERSUS FASTCGI.CONF – NGINX CONFIG HISTORY fastcgi_param QUERY_STRING $query_string; #請求的引數;如?app=123fastcgi_param REQUEST_METHOD $request_method; #請求的動作(GET,POST)fastcgi_param CONTENT_TYPE $content_type; #請求頭中的Content-Type欄位fastcgi_param CONTENT_LENGTH $content_length; #請求頭中的Content-length欄位。