nginx配置引發的403問題

2021-07-15 03:36:21 字數 1142 閱讀 7745

一、問題:在curl nginx配置的本地網域名稱時出現403

nginx_error.log日誌如下:

二、疑問

1、www.requesturi.com配置如下:發現root目錄與error日誌中的禁止訪問的檔案不一致,理論上訪問www.requesturi.com應該到/usr/local/nginx/html1去查詢,為何顯示的確是/usr/local/nginx/html禁止訪問?

2、curl一下/usr/local/nginx/html1下的乙個a.txt檔案發現:發現錯誤竟然是404。

三、解決

大致可以推斷,可能是nginx.conf中www.requesturi.com沒有配置。檢視nginx.conf發現:www.requesturi.com沒有配置,而且nginx是預設不允許訪問檔案的目錄的,所以會出現403的錯誤。

再檢視下配置了的www.zhuye.com發現:www.zhuye.com的root目錄跟error日誌中的禁止訪問的目錄是一樣的,而且server_name為乙個ip而不是網域名稱

原因:因為www.requesturi.com沒有配置,所以當我們訪問www.requesturi.com時,nginx會訪問預設(即為www.zhuye.com),在訪問a.txt(在www.zhuye.com目錄下不存在這個檔案)會報出404找不到的錯誤。

可以通過修改nginx配置,讓nginx可以訪問檔案目錄:

顯示目錄下檔案:

配置nginx的403錯誤頁面跳轉

在nginx.conf同目錄下建立blockips.conf,加入需要阻止的ip deny 192.168.1.3 在nginx中 匯入阻止ip 建立403 error頁面 your ip address is blocked.if you this an error,please contact ...

nginx 配置目錄列表 403錯誤

nginx配置目錄列表的功能,預設是關閉的。想要開啟這個功能需要配置autoindex on,autoindex localtime on autoindex exact size on 僅僅是加入三句話。1 server 14 重啟nginx.這裡需要註明,如果你訪問的網域名稱www.test.c...

nginx快取引發的問題

請求為f.chinasoft.com file f.chinasoft.com 網域名稱指向slb 3.3.3.3 業務方式 ios slb 3.3.3.3 ecs集群 每一台ecs都有乙個nginxweb伺服器 mysql 從mysql中獲取的資料為資料庫的ip位址,再次通過該ip 假設為1.1....