nginx前端部署后,訪問不到同一臺機器的后端問題
nginx前端部署后,訪問不到同一臺機器的后端
后端是在服務器本地部署的,nginx是在容器中運行的,前端再用localhost或者127.0.0.1是肯定錯的,容器本身也就像是個虛擬機,用localhost只能訪問容器里的內容
解決方法
前端對后端的調用不能采用http://localhost:xxxx, 或者http://127.0.0.1:xxxx,而要采用域名或IP
前端nginx代理,訪問后端接口502問題積錦
項目場景
項目上線:
前端服務器配置了nginx反向代理后,用戶發(fā)出請求,結果502,本地請求后端服務的時候就正常
解決方案
http狀態(tài)碼502
目前:
- 前端服務是正常的
- 后端服務也正常
- 那么,就是連結前后端的nginx 配置出了問題
查詢各種資料:
502是nginx沒連通后端服務器,用過各種嘗試,發(fā)現(xiàn)沒有效果,最后發(fā)現(xiàn)是自己大意了,proxy_pass的后端地址,我用了https, 然而真實地址是http, 是這個原因照成502,真實汗顏啊
nginx.conf文件
location ~ /v1 {
# proxy_pass: https:abc.com; // 錯誤: 要注意到后端協(xié)議是http, 差一點都不對
proxy_pass: http:abc.com;
}總結
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
詳解nginx 的 default_server 定義及匹配規(guī)則
這篇文章主要介紹了詳解nginx 的 default_server 定義及匹配規(guī)則,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-08-08

