技術(shù)員聯(lián)盟提供win764位系統(tǒng)下載,win10,win7,xp,裝機(jī)純凈版,64位旗艦版,綠色軟件,免費(fèi)軟件下載基地!

當(dāng)前位置:主頁(yè) > 教程 > 服務(wù)器類(lèi) >

Nginx服務(wù)器中403 forbidden的錯(cuò)誤如何解決

來(lái)源:技術(shù)員聯(lián)盟┆發(fā)布時(shí)間:2018-07-30 00:17┆點(diǎn)擊:

  nginx 的 403 Forbidden errors 表示你在請(qǐng)求一個(gè)資源文件但是nginx不允許你查看。

  403 Forbidden 只是一個(gè)HTTP狀態(tài)碼,像404,200一樣不是技術(shù)上的錯(cuò)誤。

  哪些場(chǎng)景需要返回403狀態(tài)碼的場(chǎng)景?

  1.網(wǎng)站禁止特定的用戶訪問(wèn)所有內(nèi)容,例:網(wǎng)站屏蔽某個(gè)ip訪問(wèn)。

  2.訪問(wèn)禁止目錄瀏覽的目錄,例:設(shè)置autoindex off后訪問(wèn)目錄。

  3.用戶訪問(wèn)只能被內(nèi)網(wǎng)訪問(wèn)的文件。

  以上幾種常見(jiàn)的需要返回 403 Forbidden 的場(chǎng)景。

  由于服務(wù)器端的錯(cuò)誤配置導(dǎo)致在不希望

  nginx返回403時(shí)返回403 Forbidden。

  1.權(quán)限配置不正確

  這個(gè)是nginx出現(xiàn)403 forbidden最常見(jiàn)的原因。

  為了保證文件能正確執(zhí)行,nginx既需要文件的讀權(quán)限,又需要文件所有父目錄的可執(zhí)行權(quán)限。

  例如,當(dāng)訪問(wèn)/usr/local/nginx/html/image.jpg時(shí),nginx既需要image.jpg文件的可讀權(quán)限,也需要/,/usr,/usr/local,/usr/local/nginx,/usr/local/nginx/html的可以執(zhí)行權(quán)限。

  解決辦法:設(shè)置所有父目錄為755權(quán)限,設(shè)置文件為644權(quán)限可以避免權(quán)限不正確。

  2.目錄索引設(shè)置錯(cuò)誤(index指令配置)

  網(wǎng)站根目錄不包含index指令設(shè)置的文件。

  例如,運(yùn)行PHP的網(wǎng)站,通常像這樣配置index

  index index.html index.htm index.php;

  當(dāng)訪問(wèn)該網(wǎng)站的時(shí),nginx 會(huì)按照 index.html,index.htm ,index.php 的先后順序在根目錄中查找文件。如果這三個(gè)文件都不存在,那么nginx就會(huì)返回403 Forbidden。

  如果index中不定義 index.php ,nginx直接返回403 Forbidden而不會(huì)去檢查index.php是否存在。

  同樣對(duì)于如果運(yùn)行jsp, py時(shí)也需要添加index.jsp,index.py到目錄索引指令index中。