Nginx解決vue項(xiàng)目服務(wù)器部署及跨域訪問(wèn)后端詳解
準(zhǔn)備
(1)首先是一個(gè)Vue項(xiàng)目。
(2)其次準(zhǔn)備好服務(wù)器(在這里我是用虛擬機(jī)VMware)。
(3)準(zhǔn)備好一個(gè)SpringBoot后端代碼。
(4)服務(wù)器上必須安裝Nginx。
1、前端代碼注意事項(xiàng):
(1)在這里我是用vuecli3腳手架創(chuàng)建的vue項(xiàng)目的,所以項(xiàng)目創(chuàng)建完畢之后是沒(méi)有vue.config.js的。
其實(shí)這個(gè)文件的創(chuàng)建是為了本地測(cè)試解決前后端跨域問(wèn)題的,但是在打包項(xiàng)目的時(shí)候需要把這里關(guān)于跨域的代碼需要注釋。

// vue.config.js
module.exports = {
publicPath: './',
runtimeCompiler: true,
// devServer:{
// port:83,
// proxy:{
// '/api':{
// target:"http://localhost:8086",
// changOrigin: true, //允許跨域
// pathRewrite:{
// '^/api':'' //重寫(xiě)路徑
// }
// }
// }
// }
}
(2)第二點(diǎn)前端配置的請(qǐng)求路徑需要加一個(gè)前綴,用于nginx的路由轉(zhuǎn)發(fā):

import axios from "axios";
const request = axios.create({
// baseURL: 'http://localhost:8086', // 注意!! 這里是全局統(tǒng)一加上了 '/api' 前綴,也就是說(shuō)所有的接口都會(huì)加上'/api'前綴名
// timeout: 5000
//利用nignx解決跨域問(wèn)題
baseURL: '/api', // 注意!! 這里是全局統(tǒng)一加上了 '/api' 前綴,也就是說(shuō)所有的接口都會(huì)加上'/api'前綴名
timeout: 5000
})
export default request;(3)第三點(diǎn)需要改一下路徑地址,配置路由和組件之間的關(guān)系,配置成Hash路由模式。

(4)基本上到這里然后控制臺(tái)npm run build 一下就可以了!!
(5)將dist文件夾的文件上傳到Nginx中。

2、虛擬機(jī)的Nginx配置關(guān)鍵點(diǎn):
重要的一點(diǎn),全程都要以root賬戶進(jìn)行操作,輸入su root ,然后輸入密碼即可進(jìn)行root權(quán)限。
(1)Nginx結(jié)構(gòu)目錄:

(2)在這里我們要把前端打包好的代碼dist下面的文件通過(guò)第三方軟件上傳到了index中了。

(3)這時(shí)候開(kāi)始配置cong中的nginx.conf文件,vim nginx.conf。

(4)修改配置文件:具體如圖所示,在這里注意proxy_pass http://之后的地址加你自己電腦的IP地址加上相應(yīng)的后端的端口號(hào)。
舉個(gè)例子:假設(shè)這里我本機(jī)的IP地址為192.168.12.1,SpringBoot的端口號(hào)為8081,那么請(qǐng)求地址為proxy_pass http://192.168.12.1:8081/;
如何查看本機(jī)的Ip地址呢?找到window10左下角輸入cmd,然后輸入ipconfig,就可以查看了。


(5)還有很重要的一點(diǎn),要關(guān)閉Linux的防火墻,我這里是centos7.6,所以在命令行要輸入systemctl stop firewalld.service。
到這里的話,把后端的項(xiàng)目跑起來(lái),虛擬機(jī)上的Nginx運(yùn)行起來(lái),項(xiàng)目就可以正常訪問(wèn)了?。。?/strong>
測(cè)試
(1)訪問(wèn)服務(wù)器中的前端文件

(2)前端文件請(qǐng)求,然后通過(guò)Nginx轉(zhuǎn)發(fā)到后端。

(3)后端接受請(qǐng)求,給予前端反饋。

總結(jié)
到此這篇關(guān)于Nginx解決vue項(xiàng)目服務(wù)器部署及跨域訪問(wèn)后端的文章就介紹到這了,更多相關(guān)Nginx解決vue項(xiàng)目服務(wù)器部署內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
配置nginx訪問(wèn)本地靜態(tài)資源,本地圖片,視頻教程
文章介紹了如何配置Nginx以訪問(wèn)本地靜態(tài)資源、圖片和視頻,首先,進(jìn)入Nginx安裝目錄并打開(kāi)`nginx.conf`文件,添加一個(gè)新的`server`配置來(lái)指定本地路徑,然后,通過(guò)命令行重啟Nginx服務(wù)以應(yīng)用更改,最后,通過(guò)瀏覽器訪問(wèn)配置的圖片路徑來(lái)驗(yàn)證配置是否成功2025-01-01
centos8中使用yum安裝nginx的詳細(xì)過(guò)程
這篇文章主要介紹了centos8中怎樣使用yum安裝?nginx,centos8和centos7安裝nginx有點(diǎn)點(diǎn)不一樣,centos8?自帶了nginx?1.14.1?,我們先升級(jí)到新穩(wěn)定版1.20.1,具體安裝方法跟隨小編一起學(xué)習(xí)下吧2023-03-03
nginx+redis實(shí)現(xiàn)session共享
這篇文章主要為大家詳細(xì)介紹了nginx+redis實(shí)現(xiàn)session的共享,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-03-03
詳解Nginx如何根據(jù)swagger關(guān)鍵字屏蔽頁(yè)面
這篇文章主要為大家詳細(xì)介紹了Nginx 如何根據(jù)swagger關(guān)鍵字屏蔽頁(yè)面的實(shí)現(xiàn)方案,文中有詳細(xì)的解決方案,對(duì)我們的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2023-08-08
Nginx編譯參數(shù)大全 configure參數(shù)中文詳解
這篇文章主要介紹了Nginx編譯參數(shù)大全,Nginx configure參數(shù)中文詳解,需要的朋友可以參考下2014-04-04

