tft每日頭條

 > 生活

 > nginx跨域報504錯誤

nginx跨域報504錯誤

生活 更新时间:2024-11-25 21:47:57
1、問題背景

使用Nginx做動靜分離,web端打不開圖片

nginx跨域報504錯誤(nginx訪問403報錯)1

2、處理思路

nginx跨域報504錯誤(nginx訪問403報錯)2

3、處理過程

1)、第一種:nginx的啟動用戶問題,Permission denied

查看nginx的錯誤日志,這種錯誤的原因有很多,比如文件缺少、啟動用戶問題

nginx跨域報504錯誤(nginx訪問403報錯)3

查看nginx的啟動用戶,執行ps -ef | grep nginx,可以查看到啟動用戶是root

nginx跨域報504錯誤(nginx訪問403報錯)4

而nginx的默認工作用戶是nobody,需要将nginx.conf的user改為和啟動用戶一緻

nginx跨域報504錯誤(nginx訪問403報錯)5

修改後保存,重啟nginx服務即可

/usr/local/nginx/sbin/nginx -s reload

2)、第二種:缺少index.html文件

缺少index.html或者index.php文件,就是配置文件中index index.html index.php這行指定的文件

server { listen 80; server_name localhost; index index.php index.html; root / var/www; }

如果在/var/www目錄沒有index.php,index.html的時候,直接訪問域名,就會找不到文件,會報403

3)、第三種:訪問目錄權限問題

如果nginx沒有訪問目錄(比如/var/www)的讀寫權限,也會出現403的錯誤

解決方法:修改web目錄的讀寫權限

chmod -R 755 /var/www

4)、第四種:SELINUX設置問題

本機SeLinux為開啟enabled狀态也會影響到nginx的訪問

  1. 首先使用getenforce命令查看,如下圖所示,SELinux為開啟狀态

[root@localhost ~]# getenforce

Enabled

2.如何關閉?

臨時關閉

setenforce 0 ##設置SELinux 成為permissive模式

永久關閉

修改/etc/selinux/config文件,将SELINUX=enforcing改為SELINUX=disabled

5)、第五種:目錄索引問題

1、查看nginx的報錯日志,看到有報錯為禁止以/opt目錄作為索引

nginx跨域報504錯誤(nginx訪問403報錯)6

2、修改配置文件,添加autoindex on;打開目錄浏覽功能

nginx跨域報504錯誤(nginx訪問403報錯)7

3、重啟nginx服務

nginx跨域報504錯誤(nginx訪問403報錯)8

4、訪問成功

nginx跨域報504錯誤(nginx訪問403報錯)9

1.4、案例總結

訪問Nginx服務上報403,一般都是以上幾種情況,不同的情況需要不同的處理方法

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved