vue打包(hash和history)部署详细步骤

 更新时间:2024年07月05日 14:43:32   作者:WYG_王雅格  
这篇文章主要介绍了vue打包(hash和history)部署详细步骤,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

vue打包部署详细步骤

能看到这的兄弟,我就认为你们已经有了服务器,以及服务器上装了nginx,下面找到nginx下的html,这个是根目录,将你打包的文件放到这里面就行了。。。

我这里用的可视化工具是xftp,我这里部署了两个项目分别是v3和hashTest项目。

下面详细讲一下怎么打包,以及怎么写配置文件

![](https://img-blog.csdnimg.cn/6a9e7769a73d41bf88862ce17c67d862.png

一、hash模式下的打包

1、修改vue.config.js,先想好自己是存放再那个文件夹下

如上图所示,根目录下我存放的是hashTest文件夹,那么 publicPath: '/hashTest/'我就设置成了 /hashTest/,之所以这么设置,是因为,要把静态存放到这个文件夹下,所谓静态文件就是css,js,image等,打包的时候如果不这是publicPath就会爆找不到这些静态文件找不到的错误。

如图所示:

			const { defineConfig } = require('@vue/cli-service')
			module.exports = defineConfig({
			  transpileDependencies: true,
			  publicPath: '/hashTest/'
			})

2、修改完,直接打包,将项目拉到创建的hashTest文件夹下:如图

3、找到nginx.conf文件,修改器中的localtion配置

找到后打开,默认是这个

修改的时候,只需要再添加一个localtion,访问页面即可

  location  /hashTest {
            root   html/;
            index  index.html index.htm;
    }

成功显示

4、如果你只想放在根目录html下面,可以将123省略掉,将你打包的内容直接拉过来即可访问

hash就到这了~

二、history模式下的打包

1、修改router.js里面的配置

const router = new VueRouter({
  mode: 'history',
  base: '/historyTest/',
  routes
})

2、修改vue.config.js里面的配置,将base和 publicPath一直即可

const { defineConfig } = require('@vue/cli-service')
module.exports = defineConfig({
  transpileDependencies: true,
  publicPath: '/historyTest/'
})

3、在服务器上的目录配置

我是存放到html的根目录下面了所以如图:

再修改ngnix.conf里面的配置

   location  /historyTest {
        root   html/;
        index  index.html index.htm;
        try_files $uri $uri/ /historyTest/index.html;
   }

try_files $uri $uri/ /historyTest/index.html;防止页面404,至于为啥会出现404,是因为咱们在浏览器上输入http://xxx/historyTest/about的时候是请求的服务器,而这个路由属于后端路由,about是存在服务器上的,改成history后,就只能访问到historyTest下的html,访问不到about,所以会爆404,具体的解释,自行了解。

然后重启访问就可以看到页面了。

重启nginx

  ./nginx -s reload

当然你要找到nginx下的sbin,我的是在这个目录下,每次修改都要重新启动

/usr/local/nginx/sbin

重启后访问路径,没毛病。。。。。

主要就这几个了

hash模式路径:

  • http://47.98.174.225/#/
  • http://47.98.174.225/hashTest/#/

history模式访问路径:

  • http://47.98.174.225/historyTest/about

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • vue中如何使用唯一标识uuid(uuid.v1()-时间戳、uuid.v4()-随机数)

    vue中如何使用唯一标识uuid(uuid.v1()-时间戳、uuid.v4()-随机数)

    这篇文章主要给大家介绍了关于vue中如何使用唯一标识uuid(uuid.v1()-时间戳、uuid.v4()-随机数)的相关资料,当使用Vue.js生成UUID时,我们可以使用uuid库来帮助我们生成通用唯一标识符(UUID),需要的朋友可以参考下
    2023-12-12
  • vue3 element-plus el-tree自定义图标方式

    vue3 element-plus el-tree自定义图标方式

    这篇文章主要介绍了vue3 element-plus el-tree自定义图标方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-03-03
  • 基于vue--key值的特殊用处详解

    基于vue--key值的特殊用处详解

    这篇文章主要介绍了基于vue--key值的特殊用处详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07
  • vue-pdf实现文件在线预览

    vue-pdf实现文件在线预览

    这篇文章主要为大家详细介绍了vue-pdf实现文件在线预览,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • 详解Vue2的diff算法

    详解Vue2的diff算法

    这篇文章主要介绍了Vue2的diff算法的相关资料,帮助大家更好的理解和使用vue框架,感兴趣的朋友可以了解下
    2021-01-01
  • OpenLayer基于vue的封装使用教程

    OpenLayer基于vue的封装使用教程

    这篇文章主要介绍了OpenLayer基于vue的封装使用,openlayer使用的版本是"^6.4.3",引入了mapbox的样式,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-10-10
  • Vue多选框保留勾选数据实现方式

    Vue多选框保留勾选数据实现方式

    文章浏览阅读1.2w次,点赞2次,收藏6次。文章讲述了在Vue.js组件开发中遇到的分组数据选中状态保存问题,通过三个阶段的探索,最终使用ElementUI的reserve-selection属性解决了数据切换与勾选状态保留的难题,并提供了相关代码示例和优化建议。
    2025-08-08
  • LogicFlow内置插件使用实例

    LogicFlow内置插件使用实例

    这篇文章主要为大家介绍了LogicFlow内置插件使用实例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-01-01
  • van-dialog 组件调用报错的解决

    van-dialog 组件调用报错的解决

    这篇文章主要介绍了van-dialog 组件调用报错的解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • vue.js路由的基本使用方式

    vue.js路由的基本使用方式

    VueRouter是Vue.js的官方路由插件,用于实现单页应用的页面切换和导航,通过安装、配置路由规则、定义路由组件和使用<router-link>、<router-view>标签
    2025-01-01

最新评论