Nginx解決前端訪問(wèn)資源跨域問(wèn)題的方法詳解
被前端跨域問(wèn)題折磨快2天后,終于用ngnx的方式解決了,所以在此總結(jié)下。
該篇只探討如何用Ngnx解決跨域問(wèn)題,對(duì)于原理不作討論。
1、首先介紹Windows環(huán)境下Nignx的相關(guān)命令操作
nginx常用命令:
- 驗(yàn)證配置是否正確: nginx -t
- 查看Nginx的版本號(hào):nginx -V
- 啟動(dòng)Nginx:start nginx
- 快速停止或關(guān)閉Nginx:nginx -s stop
- 正常停止或關(guān)閉Nginx:nginx -s quit
- 配置文件修改重裝載命令:nginx -s reload
在停止ngix后,會(huì)自動(dòng)刪除/logs目錄下的nginx.pid
- 可以使用命令nginx -c conf/nginx.conf 重新創(chuàng)建 或者 再次啟動(dòng)nginx
查看nignx 監(jiān)聽(tīng)端口 是否啟動(dòng)成功
- netstat -ano | findstr 端口號(hào)
解決關(guān)閉nignx后 端口仍在監(jiān)聽(tīng)中
1、netstat -ano | findstr 端口號(hào) #獲取到PID
2、tasklist | findstr "PID" #命令找到nginx進(jìn)程信息
3、taskkill /f /t /im nginx.exe #結(jié)束nginx進(jìn)程
2、介紹如何配置Nignx 解決跨域問(wèn)題
前端ip端口號(hào):http://localhost:8080/
后端ip端口號(hào):http://localhost:8082/
現(xiàn)在我們?cè)诓蛔隹缬蛟O(shè)置時(shí),前端請(qǐng)求如下
uni.request({
url:'http://localhost:8082/ApiController/test',
success:(res)=>{
console.log(res.data)
},
})
訪問(wèn)地址:'http://localhost:8082/ApiController/test',就會(huì)出現(xiàn)

那么我們進(jìn)行Nignx配置
編輯 /config/nginx.conf此文件
1)添加頭信息,在nginx.conf配置文件http塊中添加跨域訪問(wèn)配置
add_header Access-Control-Allow-Origin *; //允許所有域名跨域訪問(wèn)代理地址 add_header Access-Control-Allow-Headers X-Requested-With; add_header Access-Control-Allow-Methods GET; //跨域請(qǐng)求訪問(wèn)請(qǐng)求方式,
2)設(shè)置反向代理
server {
listen 80; #配置nignx的監(jiān)聽(tīng)端口
server_name localhost; #配置nignx的監(jiān)聽(tīng)地址
location /ApiController{ #監(jiān)聽(tīng)地址 以/ApiController開(kāi)頭的地址
proxy_pass http://localhost:8082; #轉(zhuǎn)發(fā)地址
}
}
此時(shí)配置后我們前端訪問(wèn)url
http://localhost:8082/ApiController/test 應(yīng)修改為http://localhost:80/ApiController/test
#此時(shí)監(jiān)聽(tīng)
以localhost為域名
以80為端口
以/ApiController為地址開(kāi)頭
才會(huì)進(jìn)行地址轉(zhuǎn)發(fā)
uni.request({
url:'http://localhost:80/ApiController/test',
success:(res)=>{
console.log(res.data)
},
})
結(jié)果:(訪問(wèn)成功)

總結(jié)
到此這篇關(guān)于Nginx解決前端訪問(wèn)資源跨域問(wèn)題的文章就介紹到這了,更多相關(guān)Nginx解決前端訪問(wèn)資源跨域內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 利用nginx解決cookie跨域訪問(wèn)的方法
- Nginx服務(wù)器中處理AJAX跨域請(qǐng)求的配置方法講解
- Nginx解決轉(zhuǎn)發(fā)地址時(shí)跨域的問(wèn)題
- 利用Nginx反向代理解決跨域問(wèn)題詳解
- Nginx實(shí)現(xiàn)跨域使用字體文件的配置詳解
- nginx配置解決跨域訪問(wèn)的方法詳解
- nginx解決跨域問(wèn)題的實(shí)例方法
- vue.js使用代理和使用Nginx來(lái)解決跨域的問(wèn)題
- Nginx解決vue項(xiàng)目服務(wù)器部署及跨域訪問(wèn)后端詳解
- Nginx解決HTTP跨域兩種實(shí)用方案
相關(guān)文章
Nginx報(bào)錯(cuò)"Too many open files"問(wèn)題的深度解析
在高并發(fā)場(chǎng)景下,Nginx作為Web服務(wù)器或反向代理時(shí),常常會(huì)遇到“Too many open files”錯(cuò)誤,本文將從問(wèn)題原理,解決方案,配置優(yōu)化及驗(yàn)證方法等方面,詳細(xì)解析如何解決這一問(wèn)題,希望對(duì)大家有所幫助2025-06-06
Nginx $remote_addr和$proxy_add_x_forwarded_for變量的實(shí)現(xiàn)
本文主要介紹了Nginx $remote_addr和$proxy_add_x_forwarded_for變量的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-08-08
在nginx中實(shí)現(xiàn)單位時(shí)間內(nèi)限制訪問(wèn)頻率的教程
這篇文章主要介紹了在nginx中實(shí)現(xiàn)單位時(shí)間內(nèi)限制訪問(wèn)頻率的教程,并非針對(duì)IP而是全局的訪問(wèn)量限制,需要的朋友可以參考下2015-04-04
Nginx配置中使用Lua腳本的實(shí)現(xiàn)步驟
在阿里云API網(wǎng)關(guān)和字節(jié)跳動(dòng)邊緣計(jì)算平臺(tái)中,Nginx+Lua的組合已成為處理復(fù)雜業(yè)務(wù)邏輯的標(biāo)準(zhǔn)解決方案,下面我們就來(lái)介紹一下Nginx配置中使用Lua腳本的實(shí)現(xiàn)步驟,感興趣都可以了解一下2025-09-09
配置Nginx實(shí)現(xiàn)簡(jiǎn)單防御cc攻擊
本文主要介紹lua+Nginx下如何快速有效得防御CC攻擊。至于如何安裝Nginx就不詳細(xì)介紹了,閑話少說(shuō),大家請(qǐng)看示例2018-02-02
Nginx重定向后請(qǐng)求參數(shù)丟失的原因分析及解決方案
在日常開(kāi)發(fā)和運(yùn)維中,我們經(jīng)常會(huì)遇到需要使用 Nginx 進(jìn)行反向代理的場(chǎng)景,但在配置 proxy_pass 時(shí),有時(shí)候可能會(huì)遇到請(qǐng)求參數(shù)丟失的問(wèn)題,在這篇文章中,我們將會(huì)詳細(xì)探討這個(gè)問(wèn)題并給出幾種解決方案,需要的朋友可以參考下2023-11-11
windows系統(tǒng)安裝配置nginx環(huán)境
這篇文章介紹了windows系統(tǒng)安裝配置nginx環(huán)境的方法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-06-06

