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

 更新时间:2024年09月27日 10:09:35   作者:气拔星  
为满足单端口访问多个前端应用的需求,需要对nginx进行配置,同时修改vue项目的publicPath参数,这篇文章主要介绍了使用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配置的端口。

总结

到此这篇关于使用nginx实现一个端口和ip访问多个vue前端的文章就介绍到这了,更多相关nginx一个端口和ip访问多个vue内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 让Nginx支持shtml格式的配置方法

    让Nginx支持shtml格式的配置方法

    这篇文章主要介绍了让Nginx支持shtml格式的配置方法,shtml格式可以包含一些服务端指令,同PHP中的include功能类似,需要的朋友可以参考下
    2014-08-08
  • 解决Nginx转发图片不能显示的问题

    解决Nginx转发图片不能显示的问题

    在使用Nginx作为反向代理将iServer的HTTP协议转换为HTTPS协议时,可能会遇到静态资源无法加载、页面跳转回HTTP协议、访问服务管理界面权限问题等情况,本文给大家介绍解决Nginx转发图片不能显示的问题,感兴趣的朋友一起看看吧
    2024-11-11
  • 如何让Nginx支持中文文件名具体设置步骤

    如何让Nginx支持中文文件名具体设置步骤

    想让Nginx支持中文文件名首先得让你的系统有中语语言包,设置前可以执行:locale 看一下,如果显示是en_US.UTF-8,即是正常,不用按下面的步骤设置
    2013-06-06
  • nacos集群搭建Nginx负载均衡的操作详解

    nacos集群搭建Nginx负载均衡的操作详解

    这篇文章主要介绍了nacos集群搭建Nginx负载均衡的详细操作,文中通过代码示例和图文介绍的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-01-01
  • Nginx 负载均衡是什么以及该如何配置

    Nginx 负载均衡是什么以及该如何配置

    这篇文章主要介绍了Nginx 负载均衡是什么以及该如何配置,帮助大家更好的理解和使用Nginx服务器,感兴趣的朋友可以了解下
    2021-01-01
  • nginx配置域名访问时域名后出现两个斜杠//的解决方法

    nginx配置域名访问时域名后出现两个斜杠//的解决方法

    最近这两天重新写了一下我的个人网站,在阿里云新买了一台服务器,配置好以后出现了一个问题,就是输入域名后域名地址会自动在后面追加两个斜杆,需要的朋友可以参考下
    2020-07-07
  • Nginx中的root和alias指令示例详解

    Nginx中的root和alias指令示例详解

    Nginx是一种高性能的Web服务器软件,其中root和alias是用于配置资源位置的两个指令,root指令用于设置资源的根目录,而alias指令则为特定location设置路径别名,root适用于整体目录结构,alias适合细粒度路径控制,本文详解这两个指令的用途及区别
    2024-10-10
  • Nginx 的多站点配置方案

    Nginx 的多站点配置方案

    这篇文章主要介绍了Nginx 的多站点配置方案,需要的朋友可以参考下
    2017-07-07
  • Nginx限流和黑名单配置的策略

    Nginx限流和黑名单配置的策略

    这篇文章主要介绍了Nginx限流和黑名单配置,Nginx的限流主要是两种方式,限制访问频率和限制并发连接数,Nginx 按请求速率限速模块使用的是漏桶算法,即能够强行保证请求的实时处理速度不会超过设置的阈值,感兴趣的朋友跟随小编一起看看吧
    2022-05-05
  • nginx开启HSTS让浏览器强制跳转HTTPS访问详解

    nginx开启HSTS让浏览器强制跳转HTTPS访问详解

    这篇文章主要介绍了nginx开启HSTS让浏览器强制跳转HTTPS访问详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-05-05

最新评论