在nginx上部署vue2/vue3项目(history模式)

1、vue项目路由history模式配置(vue2和vue3整个配置就这一步不一样)

vue2配置
const router = new Router({
  mode: 'history', // 访问路径不带井号  需要使用 history模式
  base: '/bank/page',  // 基础路径
  routes: [
    {
      path: '/count',
      name: 'count',
      component: resolve => require(['@/views/count'], resolve) // 使用懒加载
    }
  ]
});
vue3配置
import {createRouter, createWebHashHistory, createWebHistory} from 'vue-router'
// 在 Vue-router新版本中,需要使用createRouter来创建路由
export default createRouter({
  // 指定路由的模式,此处使用的是history模式
  history: createWebHistory(),
  // 路由地址
  routes: [{
    path: '/todo-list',
    // 必须添加.vue后缀
    component: () => import('../views/todo-list.vue')
  }]
})


2、打包并复制dist包到自己想放置的目录下

打包项目,生成dist文件,然后压缩
npm run build
复制到服务器目录下,解压

我这里将dist.zip包放置到/usr/web/myBlog/
然后解压:

unzip dist.zip


3、配置nginx.config

一般nginx安装后,该文件在/usr/local/nginx/conf/下面。
http{}内新增一下配置:

server {
        listen 8080;     #1.你想让你的这个项目跑在哪个端口
        server_name 120.48.9.40;     #2.当前服务器ip
        location / {
           root   /usr/web/myBlog/dist/;     #3.dist文件的位置(根据自己dist包放置的位置决定) 
           try_files $uri $uri/ /index.html;     #4.重定向,内部文件的指向(照写,history和bash通用,这里配置主要是兼容history模式,进行一个404的重定向)
        }
    }


4、启动nginx服务

cd到你nginx执行文件目录

cd /usr/local/nginx/sbin/

启动nginx服务

./nginx

补充一点重启ng的命令是

./nginx -s reload

如果你不想每次执行ng命令时都要跑到sbin目录下,那么可以执行一下命令配置全局变量,/usr/local/nginx/sbin/nginx为nginx执行文件,/usr/local/bin/为环境变量目录

ln -s /usr/local/nginx/sbin/nginx /usr/local/bin/

然后就能够在所有地方使用以下命令

nginx

例如:

nginx -s reload


5、访问页面(所有配置成功^_)

服务器ip + 你所配置的端口

6、防火墙开放端口

如果此时页面访问不了,可能是服务器设置了防火墙的原因。

systemctl status firewalld 查看防火墙是否开启
出现Active: active (running)切高亮显示则表示是启动状态。
出现 Active: inactive (dead)灰色表示停止,看单词也行。
启动状态进行一下配置。

firewall-cmd --zone=public --query-port=8092/tcp 查看端口是否开放
firewall-cmd --zone=public --add-port=8090/tcp --permanent 增加开放端口(端口自己决定)
firewall-cmd --reload 重新加载
重新进行页面访问测试。

Nginx部署Vue项目使用history模式)需要进行以下步骤: 1. 安装Nginx:首先确保已经在服务器上安装了Nginx,可以使用包管理器(如apt、yum等)进行安装。安装完成后,启动Nginx服务。 2. 构建Vue项目:在本地开发环境中使用Vue CLI构建好的Vue项目使用以下命令构建: ``` npm run build ``` 此命令将生成一个`dist`目录,包含了打包好的静态资源。 3. 配置Nginx:找到Nginx的配置文件,默认路径为`/etc/nginx/nginx.conf`,使用文本编辑器打开进行编辑。 4. 在Nginx的配置文件中找到`location /`的块,并将其替换为以下内容: ``` location / { try_files $uri $uri/ /index.html; } ``` 这段配置代码的作用是将所有的URL请求重定向到`index.html`文件,因为Vue项目是一个单页应用,所有的页面都由`index.html`和JavaScript文件来管理。 5. 配置代理(可选):如果Vue项目需要与后端API进行通信,可以将API请求代理到后端服务器。在Nginx配置文件的`location /`块后面,添加以下内容: ``` location /api/ { proxy_pass http://backend-server; } ``` 将`backend-server`替换为实际的后端服务器地址。 6. 保存并退出Nginx配置文件。重新加载Nginx配置,使更改生效: ``` nginx -s reload ``` 现在,Vue项目已经成功部署Nginx上,并且可以通过服务器的IP地址或域名进行访问。使用history模式Vue路由器可以正常工作,并且URL不会显示`/#/`的哈希标记。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值