apache和nginx下vue页面刷新404的解决方案
作者:对这是我的昵称 时间:2024-04-26 17:37:16
问题描述
记录一个新手很容易遇见的问题,vue的项目,在打包前本地cli模式运行没有任何问题,但是打包完在apache或者nginx中配置了域名后,项目会出现刷新后404的奇怪问题
原因
vue-router的mode使用了history模式,默认应该是hash模式。
一般都会因为hash模式的url不够美观,都用的history模式,而问题是由于history模式引起的。
history模式下的url并不是真实存在的,所以刷新后会找不到。
当你打包了项目后,一般默认会生成一个dist文件夹,文件夹下有且只有一个index.html文件。
并且vue是单页应用,因此我们可以认为所有的url路径其实都应该指向index.html的,至于路径vue会用独有的路由解析方式把他解析到对应的js文件,然后js把文件中的html模块渲染到index,html中,实现页面的展示,所以不要被路径所迷惑,
你可以把url路径理解为vue匹配页面所需要的参数,但是这个url路径如果你直接访问或者刷新,不管是apache还是nginx都无法去匹配到这个url路径,因为它不存在,所以我们此时就要在apache或者nginx配置一下伪静态,让每个url路径都指向index.html就可以了。
伪静态配置
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;
}
来源:https://blog.csdn.net/Attitude_do_it/article/details/122682416
标签:apache,nginx,vue,页面刷新,404
0
投稿
猜你喜欢
python并发2之使用asyncio处理并发
2022-01-11 23:41:28
python得到windows自启动列表的方法
2023-12-18 14:49:13
Python实现将目录中TXT合并成一个大TXT文件的方法
2023-02-11 18:38:12
js实现简单选项卡功能
2024-04-22 13:05:47
详解Go多协程并发环境下的错误处理
2024-02-15 21:11:59
Python 一篇文章看懂时间日期对象
2022-12-23 04:29:14
浅谈购物类网站如何保持视觉设计的一致性
2009-03-30 16:02:00
SQL查询语句执行的过程
2024-01-22 21:51:02
python实现大战外星人小游戏实例代码
2023-09-23 17:18:56
判断触发器正在处理的是插入,删除还是更新触发
2024-01-19 02:03:28
ASP解析JSON
2009-12-25 16:34:00
详解mysql 组合查询
2024-01-20 10:43:06
Ajax学习小贴士
2007-10-24 23:21:00
对Python 文件夹遍历和文件查找的实例讲解
2021-11-05 22:29:25
分别使用vue和Android实现长按券码复制功能
2023-10-29 23:20:11
python3实现将json对象存入Redis以及数据的导入导出
2022-05-05 16:31:27
Python利用psutil实现获取硬件,网络和进程信息
2023-08-12 18:37:44
Pytorch搭建SRGAN平台提升图片超分辨率
2022-10-03 14:02:01
sqlserver复制数据库的方法步骤(图文)
2024-01-17 05:00:34
记录集不支持更新。这可能是提供程序的限制,也可能是选定锁定类型的限制
2010-04-07 22:35:00