当前位置: 首页 > news >正文

使用nginx实现一个端口和ip访问多个vue前端

前言:由于安全组要求,前端页面只开放一个端口,但是项目有多个前端,此前一直使用的是一个前端使用单独一个端口进行访问,现在需要调整。

需要实现:这里以80端口为例,两个前端分别是:project1,project2。

例如:访问项目1:192.168.1.10:80/project1

访问项目2:192.168.1.10:80/project2

需要的配置:1、nginx配置;2、vue前端代码修改

1、nginx配置

server {listen       80;server_name  localhost;charset utf-8;# 配置默认访问前端location / {root /usr/local/html/project1/dist/;index index.html index.htm;try_files $uri $uri/ /index.html;}# 项目2前端location /project2{alias /usr/local/html/project2/dist/;index index.html;try_files $uri $uri/ /project2/index.html;}# 项目1前端location /project1{alias /usr/local/html/project1/dist/;index index.html;try_files $uri $uri/ /project1/index.html;}# 项目1-api接口地址代理location /project1-prod-api/ {if ($request_method = OPTIONS ) {add_header Access-Control-Allow-Origin *;add_header Access-Control-Allow-Methods GET,POST,PUT,DELETE,OPTIONS;add_header Access-Control-Allow-Headers *;return 200;}proxy_redirect off;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_buffer_size 128k;proxy_buffers 32 32k;proxy_busy_buffers_size 128k;proxy_pass http://192.168.1.10:8080/;}# 项目2-api接口地址代理location /project2-prod-api/ {if ($request_method = OPTIONS ) {add_header Access-Control-Allow-Origin *;add_header Access-Control-Allow-Methods GET,POST,PUT,DELETE,OPTIONS;add_header Access-Control-Allow-Headers *;return 200;}proxy_redirect off;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_buffer_size 128k;proxy_buffers 32 32k;proxy_busy_buffers_size 128k;proxy_pass http://192.168.1.10:8081/;}
}

2、vue前端代码修改

两个项目的vue代码均要修改

修改文件:在项目根目录:.env.production

# 页面标题
VUE_APP_TITLE = 某某平台# 生产环境配置
ENV = 'production'# 生产环境
VUE_APP_BASE_API = '/project1-prod-api'

在项目根目录:vue.config.js

修改publicPath参数

3、验证修改

重新打包构建vue前端代码,修改nginx配置,并重启nginx,防火墙允许nginx配置的端口。

 

http://www.lryc.cn/news/404905.html

相关文章:

  • Linux云计算 |【第一阶段】SERVICES-DAY5
  • IP第一次综合实验
  • Could not load dynamic library ‘cudart64_100.dll‘
  • 四大引用——强软弱虚
  • MySQL--索引(2)
  • JVM类加载机制详解
  • 【MATLAB实战】基于UNet的肺结节的检测
  • Elasticsearch基础(五):使用Kibana Discover探索数据
  • 爬取百度图片,想爬谁就爬谁
  • HTTP 缓存
  • 设计模式实战:图形编辑器的设计与实现
  • .NET 情报 | 分析某云系统添加管理员漏洞
  • vue检测页面手指滑动距离,执行回调函数,使用混入的语法,多个组件都可以使用
  • opencv 优势
  • 1-如何挑选Android编译服务器
  • 【JS逆向课件:第十六课:Scrapy基础2】
  • 使用 PowerShell 自动化图像识别与鼠标操作
  • 组队学习——支持向量机
  • 【数据中心】数据中心的IP封堵防护:构建网络防火墙的基石
  • LangChain的使用详解
  • Modbus转BACnet/IP网关快速对接Modbus协议设备与BA系统
  • 万字长文之分库分表里无分库分表键如何查询【后端面试题 | 中间件 | 数据库 | MySQL | 分库分表 | 其他查询】
  • 如何查看jvm资源占用情况
  • 科研绘图系列:R语言TCGA分组饼图(multiple pie charts)
  • ReadAgent,一款具有要点记忆的人工智能阅读代理
  • 构建智能:利用Gradle项目属性控制构建行为
  • 如何通过smtp设置使ONLYOFFICE协作空间服务器可以发送注册邀请邮件
  • SQL labs靶场-SQL注入入门
  • HarmonyOS应用开发者高级认证,Next版本发布后最新题库 - 单选题序号4
  • 使用LSTM完成时间序列预测