nginx配置引發(fā)的403問題解決辦法
一、問題:在curl nginx配置的本地域名時出現(xiàn)403
nginx_error.log日志如下:
二、疑問
1、www.requesturi.com配置如下:發(fā)現(xiàn)root目錄與error日志中的禁止訪問的文件不一致,理論上訪問www.requesturi.com應(yīng)該到/usr/local/nginx/html1去查找,為何顯示的確是/usr/local/nginx/html禁止訪問?
2、curl一下/usr/local/nginx/html1下的一個a.txt文件發(fā)現(xiàn):發(fā)現(xiàn)錯誤竟然是404。
三、解決
大致可以推斷,可能是nginx.conf中www.requesturi.com沒有配置。查看nginx.conf發(fā)現(xiàn):www.requesturi.com沒有配置,而且nginx是默認(rèn)不允許訪問文件的目錄的,所以會出現(xiàn)403的錯誤。
再查看下配置了的www.zhuye.com發(fā)現(xiàn):www.zhuye.com的root目錄跟error日志中的禁止訪問的目錄是一樣的,而且server_name為一個ip而不是域名
原因:因?yàn)閣ww.requesturi.com沒有配置,所以當(dāng)我們訪問www.requesturi.com時,nginx會訪問默認(rèn)(即為www.zhuye.com),在訪問a.txt(在www.zhuye.com目錄下不存在這個文件)會報出404找不到的錯誤。
可以通過修改nginx配置,讓nginx可以訪問文件目錄:
顯示目錄下文件:
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
新聞熱點(diǎn)
疑難解答
圖片精選