2014-12-19

快速排除 Nginx 出現 403 Forbidden 錯誤

阿舍最近把 VPS 上的 Web Server 又到 Nginx 了,然後,就運氣很好的遇到這個問題了哩! 也就是當你開啟 Nginx 架設的網站的網頁的時候,就會出現「403 Forbidden」的訊息,以阿舍的專業來看,直覺這就是權限設定的問題,所以,阿舍馬上就去把資料夾權限設成 755 並把資料夾的 Owner 換成 www-data,結果 ... 屁啦 ! 才不是這個問題好不好 ~~~

不知為何一個 403 訊息要連作業系統都帶出來哩 ! ...

基本上,阿舍遇到的這個 Nginx 的 403 Forbidden 錯誤是和 Nginx 的設定有關的哩 !  最最簡單的解決方法,就是在那個資料夾裡放一個名為「index.html」的 HTML 檔 ( 只要正確的是 HTML 檔就可以,裡面要寫什麼就隨便你囉 !不過,內容是一定有機會讓訪客看到的哩 !  ... )

為什麼加一個 index.html 就可以解決呢 ? 喔 ! 這就要來說明發生的情境是如何做到的哩 ! 就是當你打的網址的最後有加一個「/ 」符號時,像是 http://xyz.arthurtoday.com/xyz/ 這樣的網址,然後 xyz 剛好是一個資料夾時,Nginx 就會在 xyz 資料夾裡找 index.html 這個檔案, 找不到時,就會出現這個 403 的訊息哩 !

如果你不想在那個資料夾裡都加一個 index.html 的話,還有一個方法,那就是在 nginx 的設定檔的 location 裡加入面這一行參數,這樣,Nginx 就會在找不到 index.html 檔案的時候,直接把那個資料夾的檔案清單給列出來,不過,阿舍沒有覺得這樣會比較好哩 !

autoindex on;

這種問題多半是發生在靜態網頁上,所以,阿舍還是建議建個 index.html 來做 redirect,把訪客導到該去的地方會比較放心又安全哩 ! ... 供參囉 ...

推薦閱讀


有疑問? 問題還是沒解決嗎? 歡迎下方留言提問和討論 😁

沒有留言 :

張貼留言

歡迎留言提問和討論 .... 😁