麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 網站 > Nginx > 正文

如何用Nginx解決前端跨域問題

2024-08-30 12:30:11
字體:
來源:轉載
供稿:網友

前言

在開發靜態頁面時,類似Vue的應用,我們常會調用一些接口,這些接口極可能是跨域,然后瀏覽器就會報cross-origin問題不給調。

最簡單的解決方法,就是把瀏覽器設為忽略安全問題,設置--disable-web-security。不過這種方式開發PC頁面到還好,如果是移動端頁面就不行了。

解決辦法

使用Nginx轉發請求。把跨域的接口寫成調本域的接口,然后將這些接口轉發到真正的請求地址。

舉個栗子

例如我們在開發一個Vue應用。

原先:

調試頁面是: http://192.168.1.100:8080/

請求的接口是: http://ni.hao.sao/api/get/info

步驟一:

請求的接口是: http://192.168.1.100:8080/api/get/info

PS:這樣就解決了跨域問題。

步驟二:

安裝好Nginx后,去到/usr/local/etc/nginx/目錄(這是Mac的),修改nginx.conf文件。

步驟三:

把默認的server配置注釋掉。

在下面增加:

  server{    listen 8888;    server_name 192.168.1.100;     location /{      proxy_pass http://192.168.1.100:8080;    }     location /api{      proxy_pass http://ni.hao.sao/api;    }  }

保存后,啟動Nginx。

PS:并不需要太了解Nginx的配置,很簡單的。

步驟四:

訪問: http://192.168.1.100:8888/

搞定。

PS:注意訪問的端口是‘8888',有其他域的地址繼續加location就行了。

錯誤示范

我一開始不太懂Nginx的配置,以為可以如下配置。

  server{    listen 8080;    server_name 192.168.1.100;     location /api{      proxy_pass http://ni.hao.sao/api;    }  }

之所以這么寫,是我認為這樣可以讓Nginx幫我監聽8080的請求,然后只轉發匹配的請求。我沒有意識到的是Nginx這么寫后,是需要占用8080端口的。

既然需要占用端口,那也就不能再被其他相同協議的進程占用,就導致開發的頁面無法以8080端口啟用。經同事提點,才想起這事情,換下思路,就有了最上面的方法。

總結

其實不僅是在開發調試時候能這么干,在生產環境也能這么玩。利用Nginx轉發請求之后,就能夠讓所要部署的靜態頁面不需要放在跟請求接口同域的地方。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到服務器教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 7777奇米成人四色影视 | 国产精品久久久久久久午夜片 | 成人高清网站 | 国内精品久久久久久久久久 | 羞羞视频免费观看网站 | 国产毛片在线 | 97青青| 久久最新网址 | 成人午夜精品 | av在线1 | 久久久久亚洲a | 狠狠99 | 成人不卡在线观看 | www.精品在线 | 天堂精品久久 | 欧美人xx| 精品无吗乱吗av国产爱色 | 男女羞羞视频在线免费观看 | 国产91在线高潮白浆在线观看 | 国产999视频在线观看 | 成人在线97 | 成人综合一区二区 | 国产精品视频自拍 | 91免费高清视频 | 92自拍视频 | 久久久精品视频免费看 | 国产激情精品一区二区三区 | 精品一区二区三区中文字幕老牛 | 麻豆视频免费网站 | 久精品久久 | 草莓福利视频在线观看 | av手机免费在线观看 | 亚洲第一色婷婷 | 鲁久久| 久久久久久久一区 | 日韩不卡一区二区 | 中国的免费的视频 | 欧洲a级片 | 免费一级毛片电影 | 久久成人免费网站 | japanesexxxx24videofree |