Nginx 常見問題彙總

HTTP 狀態碼簡介

狀態碼 說明
1xx 消息——請求已被服務器接收,繼續處理
2xx 成功——請求已成功被服務器接收、理解、並接受
3xx 重定向——須要後續操做才能完成這一請求
4xx 請求錯誤——請求含有詞法錯誤或者沒法被執行
5xx 服務器錯誤——服務器在處理某個正確請求時發生錯誤
100~199:表示成功接收請求,要求客戶端繼續提交下一次請求才能完成整個處理過程。

200~299:表示成功接收請求並已完成整個處理過程。經常使用200

300~399:爲完成請求,客戶需進一步細化請求。
    eg. 請求的資源已經移動一個新地址、經常使用302(意味着你請求我,我讓你去找別人)
    307和304(我不給你這個資源,本身拿緩存)
    
400~499:客戶端的請求有錯誤,經常使用404(意味着你請求的資源在web服務器中沒有)
    eg. 403(服務器拒絕訪問,權限不夠)
    
500~599:服務器端出現錯誤,經常使用500
複製代碼

Q1. Nginx 403 & Access denied

訪問頁面一直出現Access denied; 而Nginx的錯誤日誌則一直是」Access to the script ‘xxx’ has been denied (see security.limit_extensions)…」php

1. 在你php-fpm配置文件php-fpm.conf中設置security.limit_extensions 爲 .php 或 .php5,
或者其餘任何與你環境一致的後綴名。 對於開發環境下的一些用戶來講,
徹底移除全部security.limit_extensions的值或設置爲FALSE,可以保證能夠正常工做.

2. 在你的nginx配置文件中設置fastcgi_pass 爲你的socket地址
(e.g. unix:/var/run/php-fpm/php-fpm.sock;), 
替代ip地址:端口這種方式(127.0.0.1:9000).

3. 檢查你的SCRIPT_FILENAME, fastcgi_param 並根據你文件的地址來設置它們.

4. 在你的nginx配置文件中包含有fastcgi_split_path_info ^(.+\.php)(/.+)$;
則全部其餘的對應fastcgi參數也都應該在location塊中定義;

5. 在你的php.ini配置文件中,設置cgi.fix_pathinfo=1
複製代碼

原文連接 www.qetee.com/exp/php/pha…nginx

相關文章
相關標籤/搜索