html - 弱弱的問一個跨域的問題
問題描述
比如,同一臺服務器上,網站主目錄綁定到www.domain.com上,網站后臺綁定到www.domain.com:8080上。
即便端口不同也會被當做跨域吧? 感覺這種情況跨域有點冤,而且POST也沒有不跨域方便吧?
各位大大有什么好辦法解決一下這個問題嗎,能通過某些設置而讓網站和后臺之間不跨域嗎?這種網站和后臺分離的方式遲早要面對跨域的問題,是嗎?
問題解答
回答1:跨站的解決方案很多,常見的是JSONP,代理轉發,還有就是HTLM5的Allow Orgin允許跨站訪問的新功能。
你這種情況,建議在網站的Ngingx設置個代理,轉發到網站后臺就可以了,配置大概是這樣的:
upstream backend { server backend1.example.com:8080;}server { location /api {proxy_pass http://backend; }}
在前端頁面,通過ajax訪問的地址為:http://www.example.com/api/xxx
回答2:端口不同本來就是不同的站點,站點與站點之間就是跨域啊!通過分開前后臺,是可以讓網站比較安全,也可以分端維護,我覺得沒必要去用前端跨域請求后臺,這樣會把后臺曝露了,而且程序設計上也不應該通過前端跨域取數據吧!除非你數據庫是文件型數據庫Access或sqlite這類,那就是你設計上的問題,請求數據只需要有數據連接就可以的了。沒必要跨域。
相關文章:
1. 淺談vue生命周期共有幾個階段?分別是什么?2. Java EE 6:JSF與Servlet + JSP我應該學習JSF嗎?3. java - hibernate正向工程生成一對多關系模型無報錯,但是只生成了一張表4. java - Spring使用@Autowired失效但是getBean()可以執行成功5. javascript - js正則匹配小括號中的內容6. macos - mac下docker如何設置代理7. index.php錯誤,求指點8. 微信開放平臺 - android 微信支付后點完成按鈕,后回調打開第三方頁面,屏幕閃動,求解決方法9. 微信公眾號在線生成二維碼帶參數怎么搞?10. css box-shadow 單邊 單角陰影
