美文网首页
Vue.js项目在apache服务器部署后,刷新404的问题

Vue.js项目在apache服务器部署后,刷新404的问题

作者: JayneJing | 来源:发表于2019-02-20 20:40 被阅读0次

    原因是vue-router 使用了路由的 history 模式,这种模式充分利用 history.pushState API 来完成 URL 跳转而无须重新加载页面。

    const router = new VueRouter({
      mode: 'history',
      routes: [...]
    })
    

    需要在服务端增加一个覆盖所有情况的候选资源:如果 URL 匹配不到任何静态资源,则应该返回同一个 index.html 页面,这个页面就是你 app 依赖的页面。

    解决方案

    在项目目录下新建文件.htaccess文件,内容为:

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

    即可解决问题

    相关文章

      网友评论

          本文标题:Vue.js项目在apache服务器部署后,刷新404的问题

          本文链接:https://www.haomeiwen.com/subject/nyskyqtx.html