今天開發碰到一個問題,其實之前就有這個問題,但是一直都沒去關注,今天測試碰到了就解決一下。
問題情況:
當我請求 http://admindev.jingruiauto.com/store/views/basedata 的時候,瀏覽器自動跳轉到了 http://admindev.jingruiauto.com:8100/store/views/basedata/,我看了一下瀏覽器的請求流程,在請求 http://admindev.jingruiauto.com/store/views/basedata 發生了 301 的跳轉,自動加上了 8100 端口。
主要原因:
當請求URL后面沒有 / ,Nginx 目錄中沒有對應的文件,就會自動進行 301 並加上 /.
解決方式:
在 Nginx 的配置文件中,加上 port_in_redirect off;
如果是 Nginx 版本號大於 1.11.8,可以考慮用 absolute_redirect off;
注意:
在用 Chrome 的時候,一定要先清除緩存在測試,Chrome 會自動將 301 緩存在本地。