vue项目打包部署到服务器上后页面404问题

news/2024/7/10 0:25:03 标签: javascript, 小程序, vue

vue路由配置:

javascript">const router = new VueRouter({
  base: process.env.BASE_URL,
  //hash模式下部署到服务器访问没问题,history就不行,需要在服务器上配置
  mode: 'history',
  routes
})

vue.config.js配置:

javascript">module.exports = {
  lintOnSave: false,
  publicPath: process.env.VUE_APP_PATH,
  // publicPath : process.env.NODE_ENV === 'production' ? './' : '/',
  outputDir: 'dist',
  devServer: {
    disableHostCheck: true,
    // overlay: { // 让浏览器 overlay 同时显示警告和错误
    //   warnings: true,
    //   errors: true
    // },
    https: false, // https:{type:Boolean}
    open: false, //配置后自动启动浏览器
    hotOnly: true, // 热更新
    proxy: { //配置多个代理
      "/api": {
        target: "http://192.168.2.241",
        changeOrigin: true,
        ws: true, //websocket支持
        secure: false,
      },
    }
  },
}

404报错原因:

当我们设置了mode为history时,当前端发送路径给服务端时,服务端根本就不认识省去#的url,所以返回给我们404,因为vue是单一页面所有的页面都在index.html中,vue是用js来切换页面的,具体的解释看vue官网

解决办法:

我使用的是宝塔面板,nginx服务器,在宝塔网站伪静态设置里添加此配置保存即可解决

代码:

location / {
  if (!-e $request_filename) {
    rewrite  ^(.*)$ /index.html?s=/$1  last;
    break;
  }
}


http://www.niftyadmin.cn/n/902999.html

相关文章

什么是变量

1.变量其实就是在内存里面申请一个合适的空间&#xff0c;用于存放对应的数据 2.var&#xff1a;是定义变量的关键字用于声明变量。方式是&#xff1a;var 变量名 值 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"…

关系运算符和关系表达式

1.在javaScript中常用的关系运算符&#xff1a;(大于)> ,&#xff08;大于等于&#xff09;>, (小于)<, (小于等于)<, (等于)&#xff0c;&#xff08;不等于&#xff09;&#xff01;&#xff0c;&#xff08;恒等于&#xff09;&#xff0c;&#xff08;恒不等于…

javaScript逻辑运算符和逻辑表达式

1.在javaScript中常用的逻辑运算符有&#xff1a;&&(与&#xff0c;并且) &#xff0c; || (或&#xff0c;或者) &#xff01;&#xff08;非&#xff0c;取反&#xff09; 2.逻辑运算符&#xff0c;返回的结果是boolean 类型&#xff1a;true(真) false &#xff…

if 和 if-else选择结构

1.if选择结构的语法是&#xff1a;if(判断条件){满足条件后&#xff0c;执行的操作} 2.示例&#xff1a; <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content…

多重if 和 嵌套 if 选择结构

1.在实际开发中&#xff0c;如果判断的条件不止两个&#xff0c;这样我们就需要用到多重 if 2.例如&#xff1a;如果你有500万存款&#xff0c;买宾利。如果你有300万存款&#xff0c;买奔驰。 有100万存款&#xff0c;买奥迪。如果你有50万存款&#xff0c;买大众。有10万存款…

while 循环结构和do -while 循环结构

1.什么是循环结构&#xff1a;只要满足条件&#xff0c;就会重复执行的结构。 2.while 循环结构的语法&#xff1a; while(循环条件){ 循环代码 } 3.案例&#xff1a;输出10遍"好好学习&#xff0c;天天向上" 。代码如下&#xff1a; <!DOCTYPE html> <…

for循环与循环的跳出语句

1. for循环&#xff0c;将循环变量&#xff0c;循环条件&#xff0c;迭代部分&#xff0c;统一放到一起写&#xff0c;中间用分号隔开。 2.for循环的结构&#xff1a; <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"&…

双重for循环的常见练习题

1.打印直角三角形。 代码&#xff1a; <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content…