如何部署前端react项目到服务器,Vue、React前端项目打包部署

前端单页面应用部署

前端打包上线部署方案之 hash路由模式

对于hash路由模式打包的单页面应用,直接发布到服务器,使用nginx指向到对应文件目录即可,通用配置一般如下:

location / {

root /path/to/dist; // 服务器dist目录

index index.html index.htm;

}

前端打包部署方案之history模式路由

对于history模式路由模式的单页面应用,因为在浏览器请求静态资源的时候,是去服务器查找真正的资源路径,而我们的应用是单页面,通过路由分发的形式去加载资源的,若不配置,就会导致资源加载404,通常history模式路由的nginx的配置如下:

location / {

root path/to/dist; // 服务器dist目录

index index.html index.htm;

try_files $uri $uri/ /index.html; //访问前端路由,都转到index.html进行路由处理!!!

}

math?formula=%5Ccolor%7B%23FF0000%7D%7B%E6%B3%A8%E6%84%8F%E7%82%B91%7D

对于直接配置到根服务器的history模式我们可以这么配置,但是对于配置到二级目录的路由模式,这种方法就是个坑,通常配置到二级目录的路由处理方式如下:

location /app {

root path/to/dist; // 服务器dist目录

index index.html index.htm;

try_files $uri $uri/ /app/index.html; //访问前端路由,都转到index.html进行路由处理!!!,注意此处变化。

}

math?formula=%5Ccolor%7B%23FF0000%7D%7B%E6%B3%A8%E6%84%8F%E7%82%B92%7D

如果根路由下有静态资源已经指向另一个单页面应用,那么注意点1中的配置可能无用,需要将上面的 root改为alias

math?formula=%5Ccolor%7B%23FF0000%7D%7B%E6%B3%A8%E6%84%8F%E7%82%B93%7D

上面的路由配置好之后,项目打包部署之前,要根据环境区分打包的静态资源路径,要在项目中配置

publicPath: isDev? '/': '/app'

同时router的base 路径要设置为 /app

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值