① 403錯誤怎麼解決
一、403 forbidden是什麼意思?
403 Forbidden是HTTP協議中的一個狀態碼(Status Code)。可以簡單的理解為沒有許可權訪問此站。該狀態表示伺服器理解了本次請求但是拒絕執行該任務,該請求不該重發給伺服器。在HTTP請求的方法不是「HEAD」,並且伺服器想讓客戶端知道為什麼沒有許可權的情況下,伺服器應該在返回的信息中描述拒絕的理由。在伺服器不想提供任何反饋信息的情況下,伺服器可以用404 Not Found代替403 Forbidden。
二、403錯誤代碼的分類介紹
403.1
403.1錯誤是由於"執行"訪問被禁止而造成的,若試圖從目錄中執行CGI、ISAPI或其他可執行程序,但該目錄不允許執行程序時便會出現此種錯誤。
403.2
403.2錯誤是由於"讀取"訪問被禁止而造成的。導致此錯誤是由於沒有可用的默認網頁並且沒有對目錄啟用目錄瀏覽,或者要顯示的HTML網頁所駐留的目錄僅標記為"可執行"或"腳本"許可權。
403.3
403.3錯誤是由於"寫入"訪問被禁止而造成的,當試圖將文件上載到目錄或在目錄中修改文件,但該目錄不允許"寫"訪問時就會出現此種錯誤。
403.4
403.4錯誤是由於要求SSL而造成的,您必須在要查看的網頁的地址中使用"https"。
403.5
403.5錯誤是由於要求使用128位加密演算法的Web瀏覽器而造成的,如果您的瀏覽器不支持128位加密演算法就會出現這個錯誤,您可以連接微軟網站進行瀏覽器升級。
403.6
403.6錯誤是由於IP地址被拒絕而造成的。如果伺服器中有不能訪問該站點的IP地址列表,並且您使用的IP地址在該列表中時您就會返回這條錯誤信息。
403.7
403.7錯誤是因為要求客戶證書,當需要訪問的資源要求瀏覽器擁有伺服器能夠識別的安全套接字層(SSL) 客戶證書時會返回此種錯誤。
403.8
403.8錯誤是由於禁止站點訪問而造成的,若伺服器中有不能訪問該站點的DNS名稱列表,而您使用的DNS名稱在列表中時就會返回此種信息。請注意區別403.6與403.8錯誤。
403.9
403.9錯誤是由於連接的用戶過多而造成的,由於Web伺服器很忙,因通訊量過多而無法處理請求時便會返回這條錯誤。
403.10
403.10錯誤是由於無效配置而導致的錯誤,當您試圖從目錄中執行CGI、ISAPI或其他可執行程序,但該目錄不允許執行程序時便會返回這條錯誤。
403.11
403.11錯誤是由於密碼更改而導致無權查看頁面。
403.12
403.12錯誤是由於映射器拒絕訪問而造成的。若要查看的網頁要求使用有效的客戶證書,而您的客戶證書映射沒有許可權訪問該Web站點時就會返回映射器拒絕訪問的錯誤。
403.13
403.13錯誤是由於需要查看的網頁要求使用有效的客戶證書而使用的客戶證書已經被吊銷,或者無法確定證書是否已吊銷造成的。
403.14
403.14錯誤Web 伺服器被配置為不列出此目錄的內容,拒絕目錄列表。
403.15
403.15錯誤是由於客戶訪問許可過多而造成的,當伺服器超出其客戶訪問許可限制時會返回此條錯誤。
403.16
403.16錯誤是由於客戶證書不可信或者無效而造成的。
403.17
403.17錯誤是由於客戶證書已經到期或者尚未生效而造成的。
三、導致403錯誤的主要原因
1、你的IP被列入黑名單。
2、你在一定時間內過多地訪問此網站(一般是用採集程序),被防火牆拒絕訪問了。
3、網站域名解析到了空間,但空間未綁定此域名。
4、你的網頁腳本文件在當前目錄下沒有執行許可權。
5、在不允許寫/創建文件的目錄中執行了創建/寫文件操作。
6、以http方式訪問需要ssl連接的網址。
7、瀏覽器不支持SSL 128時訪問SSL 128的連接。
8、在身份驗證的過程中輸入了錯誤的密碼。
9、DNS解析錯誤,手動更改DNS伺服器地址。
10、連接的用戶過多,可以過後再試。
11、伺服器繁忙,同一IP地址發送請求過多,遭到伺服器智能屏蔽。
四、解決403 forbidden錯誤的方法
1、重建dns緩存
對於一些常規的403 forbidden錯誤,馬海祥建議大家首先要嘗試的就是重建dns緩存,在運行中輸入cmd,然後輸入ipconfig /flushdns即可。如果不行的話,就需要在hosts文件里把主頁解析一下了。
2、修改文件夾安全屬性
用以下命令修改文件夾安全屬性
chcon -R -t httpd_user_content_t public_html/
所用命令解析:
ls -Z -d public_html/
#顯示文件/目錄的安全語境-Z, --context
Display security context so it fits on most displays. Displays only mode, user, group, security context and file name.-d, --directory
list directory entries instead of contents, and do not dereference symbolic links
chcon -R -t httpd_user_content_t public_html/
#修改文件/目錄的安全語境-R, --recursive
change files and directories recursively-t, --type
set type TYPE in the target security context
3、關於apache導致的403 forbidden錯誤的解決辦法
打開apache的配置文件httpd.conf,找到這段代碼:
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
有時候由於配置了php後,這里的「Deny from all」已經拒絕了一切連接。把該行改成「allow from all」,修改後的代碼如下,問題解決。
Options FollowSymLinks
AllowOverride None
Order deny,allow
Allow from all
之所以會出現錯誤,是因為大多數的國外主機在配置Apache的時候啟用了mod_security,也就是開啟了安全檢查,如果提交的信息中包含select , % , bin等關鍵字,Apache就會禁止,並給出403,404,500等錯誤。
4、關於HawkHost空間出現403 Forbidden錯誤的解決方法
有的時候在共享伺服器上安裝了Mod security,當網址包含有「%」號等其它敏感字元時,就會被Mod security阻止,馬海祥博客曾經也出現過此情況。
解決HawkHost 403 Forbidden 錯誤的方法:
在.htaccess文件里添加如下代碼:
SecFilterEngine Off
SecFilterScanPOST Off
直接放在網站的根目錄或者程序運行的目錄下。
5、關於WordPress導致的403 Forbidden錯誤解決方法
對於一些使用WordPress管理程序搭建的博客來說,就需要修改.htaccess文件,在後面添加上如下內容即可,其實就是disable mod_security
SecFilterEngine Off
SecFilterScanPOST Off
另外dedecms的可能還需要再加一條,以讓默認訪問的是index.html文件的DirectoryIndex index.html。
修改.htaccess文件,將文件上傳之後,再重新打開之前出現403 Forbidden的URL就沒有再出現錯誤,直接可以打開了。