Nginx部署两个vue项目

公司要求一个URL下连接两个项目,查阅了半天了解到nginx,研究了研究终于搞定了,记录一下过程,方便以后温习。

线上nginx搭建是后台写的,开发环境是前端(也就是我)写的,所以文章是以前端角度描述的。

首先主域名是www.url.com,要绑定的子域名是www.url.com/two(two是第二个项目的名字)

第一个项目默认为根url,'/' 就自动选择第一个项目,第二个项目为 '/two' , url输入www.url.com/自动选择第一个项目,url输入www.url.com/two自动选择第二个项目。

先下载nginx,找到nginx.conf文件,修改配置

server {
        listen       8080;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   第一个项目的本地路径;
            index  index.html index.htm; //默认选择的页面
            try_files $uri $uri/ /index.html;//刷新跳转的页面,防止404
        }
         location /two{
            alias   第二个项目的本地路径;
            index  index.html index.htm;
            try_files $uri $uri/ /supplier/index.html;
        }
    }

然后配置项目,第一个项目不用写

在第二个项目vue.config.js

module.exports = {
  // publicPath: process.env.NODE_ENV === 'two'? '/two/': '/',这个是是生产者环境的值 
  publicPath: '/two/',//因为既然已经决定把它当子路径用了就直接设置,不判断了。
 }

在第二个项目vue-router里的index.js

const router = new VueRouter({
  mode: 'history',
  //加上base,把应用的基础路径改为/two/
  base: '/two/',
  routes
})

这样nginx和项目就配置完了,然后打包dist文件,启动nginx,就可以了

有个缺点是每次更新完代码都要重新打包一次nginx才可以同步到页面上,因为就开发一个小功能,就没写这块,望各位大佬优化一下。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Nginx 是一款高性能的 Web 服务器,同时也是一款反向代理服务器,支持负载均衡、动静分离、HTTP 缓存等多种功能。在实际项目中,我们经常需要部署多个 Vue 项目,利用 Nginx 可以简单地实现这个功能。 在部署两个 Vue 项目时,我们需要在服务器上分别部署两个不同的 Vue 项目,并分别启动它们的服务端口。同时,在 Nginx 的配置文件中添加两个 server 配置,分别配置两个 Vue 项目所使用的域名或者 IP 地址、端口和访问路径等相关信息,如下: ``` server { listen 80; server_name vueproject1.com; location / { proxy_pass http://localhost:3000; ... } } server { listen 80; server_name vueproject2.com; location / { proxy_pass http://localhost:4000; ... } } ``` 以上面的配置为例,我们可以看到,在 Nginx 的配置文件中,我们针对这两个 Vue 项目分别配置了 server 块,代表了两个不同的虚拟主机。每个 server 块中包含了监听的端口和域名信息,以及访问路径的配置,其中 location / 表示默认的访问路径。 对于每个 server 块中的 location 配置,我们可以使用 proxy_pass 参数来指定要代理的服务地址,即代表 Vue 项目服务的端口号。这样就可以在 Nginx 中实现两个 Vue 项目的反向代理和访问了。 最后,需要注意的是,在 Nginx 的配置文件修改完成后,需要重新加载配置,使其生效。可以使用 nginx -s reload 命令来重新加载 Nginx 的配置文件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值