使用的是vue-element-admin 作示例,其余项目应该大同小异。html
使用vue-router
的browserHistory模式,配置mode: 'history'
, 有更好的体验。vue
router/index.js
中new Router
配置,加一个base: '/vue/'
, 它指定应用的基路径,该应用是服务于localhost/vue
路径下,因此必须加base
配置,不然应用会展现404页面config/index.js
中build下的assetsPublicPath: '/vue/'
,若是用相对路径,chunk文件会报错找不到。修改httpd.conf
文件,开启rewrite_module功能。git
LoadModule rewrite_module libexec/apache2/mod_rewrite.so
,去掉前面的#。 AllowOverride None
的那行,把它改为AllowOverride All
,来使.htaccess
文件生效。www/vue
目录下新建.htaccess
文件, 须要修改RewriteRule
为/vue/index.html
, 不然刷新页面服务端会直接报404错误。<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.html$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /vue/index.html [L] </IfModule>
放到www根目录,或更深的目录,只须要对应的修改便可。第一点比较重要,参考项目的文档上也没有说明,加上不够细致,对新手仍是有门槛的。 github
但愿这篇文档帮助更多人。。。vue-router