問題:
在起alice管理系統(tǒng)的開發(fā)環(huán)境的時候,發(fā)現后臺所有的接口在第一次請求的時候全部產生404錯誤,但第二次請求成功



定位問題
查看nginx 報錯日志發(fā)現如下報錯,因此錯誤的認為錯誤發(fā)生在html
的文件夾權限不夠導致的文件無法寫入,于是開放權限之后發(fā)現還是不行,在Google一番查找還是沒找到解決方案。暫時擱置,第二天重新找錯時,無意的點開8081端口,當你訪問localhost:8081
與127.0.0.1:8081
的內容竟然不同。



當時發(fā)覺是不是端口沖突了,于是打開文件下面是nginx
的config文件和我們的項目配置文件,發(fā)現產生端口沖突,當你訪問后臺時發(fā)現請求會有專到nginx的靜態(tài)文件,因此產生404報錯。
server {
listen 8081;
server_name 127.0.0.1;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
}
server {
# 平臺端口
listen 8100;
server_name localhost;
location / {
proxy_pass http://localhost:4200/;
}
location /api/ {
proxy_pass http://localhost:8081/;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
解決方法
更改后臺端口,與項目未 nginx 的配置。
遺留問題:
在后臺啟動時,訪問localhost:8081
與127.0.0.1:8081
的內容不同
后臺關閉時相同
原因可能如下:
localhost:系統(tǒng)帶的本機當前用戶的權限去訪問
127.0.0.1:等于本機是通過網絡再去訪問本機
當nginx 與后臺沖突時為什么奇數次訪問nginx內部文件,偶數次訪問后臺(為什么能占用同一個接口)
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。