vue单页因微信分享和自动登陆须要,对于URL中存在’#’的地址,处理起来比较坑。
用history模式就不会存在这样的问题。可是换成history模式,就会有个新的问题,就是页面刷新后,页面就没法显示了(404)。
对于这个问题,只需要配置网站Nginx就可以了
server {
listen 8888;#默认端口是80,若是端口没被占用能够不用修改
server_name localhost;
root E:/vue/my_project/dist;#vue项目的打包后的dist
##############修改配置文件,以上部分应该默认存在,下面两个location是重点#############
location / {
try_files $uri $uri/ @router;#须要指向下面的@router不然会出现vue的路由在nginx中刷新出现404
index index.html index.htm;
}
#对应上面的@router,主要缘由是路由的路径资源并非一个真实的路径,因此没法找到具体的文件
#所以须要rewrite到index.html中,而后交给路由在处理请求资源
location @router {
rewrite ^.*$ /index.html last;
}
#.......该文件其余部分于此功能无关,省略
} 如果帮助到你,请赏杯奶茶喝~
- 本文链接: https://www.shx1024.top//index/article/details/article_id/105.shtml
- 版权声明:本博客所有文章除特别声明外,均默认采用 许可协议。