中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》
  • 首頁 > 
  • 教程 > 
  • 服務器 > 
  • nginx反向代理服務因配置文件錯誤導致訪問資源時出現404

nginx反向代理服務因配置文件錯誤導致訪問資源時出現404

發布時間:2020-10-22 01:48:09 來源:腳本之家 閱讀:966 作者:_Hebrew 欄目:服務器

最近測試手上的項目,出現訪問服務器的資源出現404的錯誤,這個是不應該會出現的問題,因為在此之前經過測試是沒問題,下面是詳細情況:

1)公司的服務器都是做過nginx反向代理

2)訪問路徑是在tomcat中配置過虛擬路徑

3)前幾天服務器有做過磁盤恢復

當然如果你也遇到過這關問題,沒解決的可以參考一下,如果解決了就看一下我的解決方案是否有問題,本人剛接觸Nginx不深;

出現這個問題,我首先考慮應該是路徑出現了問題,然后去修改tomcat中的配置文件server.xml中的虛擬路徑;然后再測試,還是出現404;

imgss是server.xml配置的虛擬路徑,1444...png這個是要訪問的圖片;路徑是沒有問題(但是到nginx那里的時候就有問題,后面會貼出nginx的配置文件)這個是nginx返回的一個404頁面(當時沒注意到這個是nginx的);

這就奇怪了,明明服務器里面的文件都在,怎么會訪問不到,然后將之前修改的路徑改回去(因為這個路徑在此之前是做過測試,訪問沒有問題)然后去訪問該路徑下的其他的文件,

發現訪問居然沒有問題,是可以正常在線預覽的;然后再凈多多次測試發現除了jpg,png等格式的文件不能訪問,其他的都可以正常訪問;又將服務器要訪問的資源在服務器中刪除,除了jpg,png的文件,然后再重新發起訪問,出現了正常的404;

imgss是server.xml配置的虛擬路徑,b.PDF本來就不存在;所以出現404很正常;

百度了一下資料,沒有找到解決方案;

再次查看本地jdk和服務器上的jdk,都沒有問題;有的人說是打包的問題,我重新打包后,發布到服務器測試還是同樣的問題;最后想是不是nginx的配置文件的問題,然后去查看nginx的配置文件localhost;這個是配置文件的路徑/etc/nginx/sites-available/localhost

#號注釋的部分是后面加上去的,之前是沒有,這個就是nginx的反向代理的配置文件;

注意這一段: location ~ .*\.(jpg|js|html|mp3|gif|jpeg|png|bmp|swf|ico|css)$ #設定訪問靜態文件直接讀取不經過tomcat

看到這里,相信大家也知道問題出在哪里了,當以.jpg/.png等格式文件時,它會將路徑映射到 /var/lib/tomcat7/webapps/ROOT ;本來在這個路徑下就沒有你訪問的資源當然會返回nginx的404錯誤頁面;然后嘗試將其中的jpg/png刪除掉,然后重啟服務,再次訪問,就正常了;出現這個問題應該是前幾天做磁盤恢復以后沒有將nginx的配置文件修改的原因;

當然最好的做法是,不用刪除.jpg/png;直接在上面添加這段代碼:

location ^~ /imgss/
    {
      #  root /data/customfiles/Files/;
      #  expires 30d;
      proxy_set_header  Host $host;
      proxy_pass http://127.0.0.1:8080;
    }
  location ^~ /attachments/
    {
      #  root /data/
      #  expires 30d;
      proxy_set_header  Host $host;
      proxy_pass http://127.0.0.1:8080
    }

/imgss/和/attachments/都是在tomcat配置文件中配置的虛擬路徑;nginx會一層層的向下匹配,匹配到合適的就將配置的路徑映射;

server.xml的虛擬路徑:

 <Context path="/imgss" docBase="/data/customfiles/Files/" debug="0" reloadable="true"/>
  <Context path="/attachments" docBase="/data/" debug="0" reloadable="true"/>

比如我們要訪問的路徑是:https://cache.yisu.com/upload/information/20200622/115/64703.png;

經由nginx反向代理到:https://cache.yisu.com/upload/information/20200622/115/64735.png也就是該資源在服務器中實際的位置;

當修改好以后,再次訪問,圖片便能成功加載了;當然本人也是剛接觸nginx不久,如果有說錯的話請各位指教

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

泰安市| 绵竹市| 青铜峡市| 会昌县| 郓城县| 岳池县| 洪泽县| 石屏县| 崇礼县| 肥乡县| 淄博市| 岳阳县| 黄龙县| 绥宁县| 六盘水市| 松潘县| 响水县| 汕尾市| 双辽市| 天津市| 乌拉特中旗| 通辽市| 桃源县| 舒城县| 莱西市| 旌德县| 教育| 阳春市| 五峰| 浦东新区| 龙南县| 台州市| 娄烦县| 新闻| 云龙县| 蓝山县| 阿巴嘎旗| 拜城县| 社旗县| 达尔| 清远市|