Nginx本地配置前后端分离项目-Java
目录
2.1 启动后端项目,并确定启动的ip和端口号,如127.0.0.1:9999
3 修改conf\nginx.conf配置文件,使前后端正常运行
对于前后端分离项目而言,需要nginx的反向代理
1.下载地址:nginx: download

解压后
nginx.exe为启动应用程序,点击后会一闪而过则表示启动成功,默认端口为80
conf为配置文件所在位置,后续反向代理本地ip和端口时需要修改文件conf\nginx.conf

1.1 修改nginx的启动端口
打开conf\nginx.conf文件可以看到大量的配置信息,其中需要注意的是server的配置信息,此处listen 80即为默认启动时监听的端口,server_name localhost即为监听的ip,修改这两处配置即可修改nginx启动时默认监听的ip和端口
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
}
1.2 若提示端口已被占用的解决办法
进入CMD窗口,输入netstat -ano|findstr 80即可查看所有涉及80端口的程序,记录下对应的PID,之后输入tasklist,找到对应的映像名称,利用资源管理器关闭到对应的应用程序即可。


1.3 Win下nginx的常用指令
指令只能在对应nginx安装路径下进入CMD窗口执行才有效
启动
start nginx
按照指定配置去启动nginx
nginx.exe -c conf/nginx.conf
检测nginx是否配置正确
nginx -t -c conf/nginx.conf
修改配置后重新加载生效
nginx -s reload
快速停止nginx,可能并不保存相关信息
nginx -s stop
完整有序的停止nginx,并保存相关信息.
nginx -s quit
2.代理
2.1 启动后端项目,并确定启动的ip和端口号,如127.0.0.1:9999
2.2 启动前端项目
前端项目需要源码,而不是npm打包后的文件
2.2.1 配置vue.config.js文件
需要配置前端项目启动的ip和端口,此处将端口设置为8001(可自行设置),需要格外注意的是^/api,这是因为nginx反向代理时会默认携带前缀,此处仅提醒,不需额外担心。
vue.config.js
'use strict';
const path = require('path');
const Timestamp = new Date().getTime();
function resolve(dir) {
return path.join(__dirname, dir);
}
module.exports = {
runtimeCompiler: true,
publicPath: process.env.NODE_ENV === 'production' ? './' : '/',
outputDir: 'dist',
assetsDir: 'static',
lintOnSave: false,
productionSourceMap: false,
devServer: {
client: {
overlay: false
},
host: 'localhost', // can be overwritten by process.env.HOST
port: 8001,
proxy: {
'/api': {
target: 'http://127.0.0.1:9999',
ws: true, // 是否启用websockets
changeOrigin: true,
pathRewrite: {
'^/api': ''
}
},
},
},
configureWebpack: {
plugins: [],
name: '',
resolve: {
alias: {
'@': resolve('src'),
},
},
output: {
filename: `js/[name].${Timestamp}.js`, // 每次构建打包时给文件名加上时间戳,确保每次版本更新的文件名不一样
chunkFilename: `js/[name].${Timestamp}.js`,
},
}
};
2.2.2 查看package.json文件
在package.json文件中,有如下配置,可以看到,serve即为默认的启动配置项
"scripts": {
"serve": "vue-cli-service serve",
"build:prod": "vue-cli-service build --mode production",
"build:test": "vue-cli-service build --mode test",
"build:dev": "vue-cli-service build --mode staging",
"lint": "vue-cli-service lint",
"commit": "npx git-cz"
},
2.2.3 启动前端
打开前端项目所在文件夹的CMD终端,若为第一次启动项目,需要安装依赖后才能正常启动
安装依赖
npm install
启动项目
npm run serve
3 修改conf\nginx.conf配置文件,使前后端正常运行
修改nginx的监听端口,并配置正确的后端ip和端口,之后运行nginx即可,若在此之前已启动nginx,修改配置后输入重加载指令
修改配置后重新加载生效 nginx -s reload
server {
listen 8001;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
proxy_pass http://127.0.0.1:9999;
}
}
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)