In der Entwicklungsphase ist der Front-End-Server localhost:8080 und der Back-End-Server localhost:8088, was dom?nenübergreifend ist. Daher wird Nginx als Reverse-Proxy verwendet, um alle HTTP-Anfragen, die mit http beginnen, zu konvertieren: //localhost:8080/api in http://localhost:8088/api, die Nginx-Konfiguration ist wie folgt
Das Ergebnis ist immer 404
Verwenden Sie Postman, um die Backend-Schnittstelle zu testen und sie zeigt normal an
überprüfen Sie den Task-Manager, Nginx l?uft
Das Zugriffsprotokoll vonnginx enth?lt keine Aufzeichnungen und es gibt keine Aufzeichnungen im Fehlerprotokoll. Das Folgende ist der letzte Inhalt des Fehlerprotokolls
Ich wei? nicht, was schief gelaufen ist
歡迎選擇我的課程,讓我們一起見證您的進(jìn)步~~
少了一個 /api
根據(jù)題主的要求
需要把 http://localhost:8080/api
=> http://localhost:8088/api
但是
location ^~ /api/ {
proxy_pass http://localhost:8088/;
...
}
實(shí)現(xiàn)的是 http://localhost:8080/api
=> http://localhost:8088/
所以需要訪問 http://localhost:8080/api/api
才可以訪問到真實(shí)的 端點(diǎn).
改成
location ^~ /api/ {
proxy_pass http://localhost:8088/api;
...
}
即可