假设 hash 路由为 www.test.com/#/abc
即使浏览器刷新也只会发送 www.test.com
来获取根目录的index.html
文件所以不会404
那如果这时路由变为www.test.com/a/#/abc
浏览器发送的是www.test.com/a
,而服务端没有相应的目录,也没有做其他处理,这时候会返回404吗?
如果会,那是不是和 history 路由一样要所有请求重定向到index.html
假设 hash 路由为 www.test.com/#/abc
即使浏览器刷新也只会发送 www.test.com
来获取根目录的index.html
文件所以不会404
那如果这时路由变为www.test.com/a/#/abc
浏览器发送的是www.test.com/a
,而服务端没有相应的目录,也没有做其他处理,这时候会返回404吗?
如果会,那是不是和 history 路由一样要所有请求重定向到index.html
10 回答11.2k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答4.9k 阅读✓ 已解决
2 回答4.8k 阅读✓ 已解决
4 回答4.4k 阅读✓ 已解决
那肯定会404了, 是得和history一样去做处理输出index.html.
且在
new Router
中配置base
选项.不然打包出来的文件引用资源会少一层子目录, 比如你这里是在子目录/a中, 那么base就配置为/a. (这些都可以通过环境变量来控制是否二级目录)犀利一笑^_^