查看/var/log/nginx/error.log日志顯示:xxx 403 forbidden (13: Permission denied)錯誤。我勒個去~
引起nginx 403 forbidden通常是三種情況:一是缺少索引文件,二是權限問題,三是SELinux狀態。
一、缺少index.html或者index.PHP文件,就是配置文件中index index.html index.htm這行中的指定的文件
server { listen 80; server_name localhost; index index.php index.html; root / var/www; }
如果在/ var/www下面沒有index.php,index.html的時候,直接訪問域名,找不到文件,會報403 forbidden。
二、權限問題,如果nginx沒有web目錄的操作權限,也會出現403錯誤。
解決辦法:修改web目錄的讀寫權限,或者是把nginx的啟動用戶改成目錄的所屬用戶,重啟Nginx即可解決
chmod -R 755 / var/www
三、SELinux設置為開啟狀態(enabled)的原因
首先查看本機SELinux的開啟狀態,如果SELinux status參數為enabled即為開啟狀態
/usr/sbin/ sestatus -v
或者使用getenforce命令檢查
找到原因了,如何關閉 SELinux 呢
1、臨時關閉(不用重啟)
setenforce 0
2、修改配置文件 /etc/ selinux/config,將SELINUX=enforcing改為SELINUX=disabled
vi /etc/ selinux/config
注意:修改配置文件需要重啟系統 reboot
**********若以上方法都不能解決,那還需要注意一個地方*********
查看nginx.conf:
user nobody
改成:user root
停止nginx -s stop
重啟nginx -c nginx.conf
以上所述是小編給大家介紹的Nginx報403 forbidden錯誤 (13: Permission denied)的解決辦法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VEVB武林網網站的支持!
新聞熱點
疑難解答