vue前端去掉“#”,与后台联调点击刷新会出现404,怎么解决?

问题:前端去掉“#”,与后台联调点击刷新会出现404,怎么解决?
前端去掉“#”代码:
mode: 'history',
routes: [

  {
  path: '/',
  redirect: 'home',
   },{
  path: '/home',
  component: home
}
  

]
正常时:图片描述

点击刷新报错信息:

图片描述

阅读 4.6k
4 个回答

服务器需要额外做配置,具体参考 HTML5 History 模式

后端配置例子

  • Apache

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteBase /
  RewriteRule ^index\.html$ - [L]
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule . /index.html [L]
</IfModule>
  • Nginx

location / {
  try_files $uri $uri/ /index.html;
}

这种功能需要后台配合,刷新时会请求服务器,服务器没有相应的路径,需要后台处理

推荐问题
宣传栏