將vue+nodejs項目部署到服務(wù)器上的實現(xiàn)
1、后端使用express生成器
1.1、后臺node項目部署
- 在node項目里安裝cors依賴(跨域)
npm install cors --save,在app.js文件中使用var cors = require('cors'); app.use(cors()); - 在寶塔面板的wwwroot目錄里新建一個文件夾,將node項目上傳到這個文件夾中。
- 打開軟件商店,安裝nginx和pm2管理器
- 在寶塔面板安全和服務(wù)器的安全組這里開放后臺項目端口
- 打開pm2管理器,添加項目,選擇啟動文件(如果是express建立的,則選擇bin/www)app.js;運行目錄選擇項目目錄;點擊提交;
- 點擊模塊,選擇管理,選擇一鍵安裝依賴
- 選擇項目映射,輸入域名(需要在域名解析里),然后提交即可。
1.2、前臺vue項目部署
- 配置axios中的默認地址為項目后臺的地址
- 在本地vue項目的根目錄下創(chuàng)建vue.config.js,代碼如下:
module.exports = {
devServer: {
proxy: {
'/api': {
target: "", // node后臺接口域名
secure: true, // 如果是https接口,需要配置這個參數(shù)
changeOrigin: true, //是否跨域
pathRewrite: {
'^/api': '' //需要rewrite的
}
}
}
}
}在所有的請求地址里添加/api,如:
this.$axios
.get("/api/liuyan")
.then((response) => {
this.commentdata = response.data;
})
.catch((error) => {
console.log("error", error);
});使用npm run build進行項目打包
將打包后的dist文件上傳到node項目文件所在的文件夾里,打開寶塔面板,打開網(wǎng)站,添加站點,輸入域名,根目錄選擇dist文件夾,提交。
打開網(wǎng)站設(shè)置,選擇配置文件,在 #禁止訪問的文件或目錄 前添加以下代碼:
location / {
try_files $uri $uri/ /index.html;
}
location /api/ {
proxy_pass node后臺接口域名;
}2、后端純接口(app.js)
2.1 后臺node部署
與1.1上面的配置相同,也可以不使用cors模塊進行跨域,直接在app.js文件中添加下面的代碼:
const app = express();
app.all('*', function (req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Headers", " Origin, X-Requested-With, Content-Type, Accept");
res.header("Access-Control-Allow-Headers","Authorization");
res.header("Access-Control-Allow-Methods", "PUT,POST,GET,DELETE,OPTIONS");
res.header("X-Powered-By", ' 3.2.1')
//方便返回json
res.header("Content-Type", "application/json;charset=utf-8");
if (req.method == 'OPTIONS') {
//讓options請求快速返回
res.sendStatus(200);
} else {
next();
}
});2.2 前臺vue部署
不需要創(chuàng)建vue.config.js文件,直接使用npm run build進行打包,并把打包后的dist文件夾上傳到服務(wù)器上。
在打包前需要配置一下axios的默認請求地址,地址是你的后臺項目的映射,比如我的就是http://backqianlixun.likepoems.com
OK 部署完成
到此這篇關(guān)于將vue+nodejs項目部署到服務(wù)器上的實現(xiàn)的文章就介紹到這了,更多相關(guān)vue+node項目部署到服務(wù)器內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
在Vue中導(dǎo)入并讀取Excel數(shù)據(jù)的操作步驟
在工作中遇到需要前端上傳excel文件獲取到相應(yīng)數(shù)據(jù)處理之后傳給后端并且展示上傳文件的數(shù)據(jù),所以本文就來給大家介紹一下Vue中導(dǎo)入并讀取Excel數(shù)據(jù)的操作步驟,需要的朋友可以參考下2023-08-08
el-table表格渲染動態(tài)表頭,數(shù)據(jù)更新視圖不變化的解決方案
這篇文章主要介紹了el-table表格渲染動態(tài)表頭,數(shù)據(jù)更新視圖不變化的解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2025-06-06
Vue2?Element?description組件列合并詳解
在使用Vue的時候經(jīng)常會涉及到表格的列合并,下面這篇文章主要給大家介紹了給大家Vue2?Element?description組件列合并的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2023-01-01
vue樹形結(jié)構(gòu)數(shù)據(jù)處理的方法總結(jié)
在項目開發(fā)的過程中,會經(jīng)常使用樹形結(jié)構(gòu)數(shù)據(jù),前后端交互都會對數(shù)據(jù)進行處理,后端返回的數(shù)據(jù)前端有的時候不能直接使用需要轉(zhuǎn)換,本文小編整理了一些項目中用到的處理方法,需要的朋友可以參考下2023-11-11

