Nginx-Vue-History-404问题
问题原因
Nginx服务器根据页面路由,按路径寻找资源
打包好的Vue web站点只有一个html页面,不存在其他资源目录下的html,服务器找不到对应页面,所以才报404
解决方案
在对应的代理规则中加入:
1 | # 如果给出的file都没有匹配到,则重新请求最后一个参数给定的uri,就是新的location匹配 |
常见变量
- $uri:当前请求的URI,但不含”?”后的参数
- $args:当前请求的参数,即”?”后的宇符串
- $arg_xxx:当前请求里的某个参数,”arg”后是参数的名字
- $http_xxx:当前请求里的xxx头部对应的值
- $sent_http_xxx:返回给客户端的响应头部对应的值
- $remote_addr:客户端IP地址。
- $http_cookie:获取cookie值
- $cookie_xxx:当前请求的cookie xxx对应的值
- $request_uri:浏览器发起的不作任何修改的请求的url中的path,如在www.baidu.com/p1/file?d=111, 其值为/p1/file?d=111
- $uri:当前的请求URI,不包括任何参数,反映任何内部重定向或index模块所做的修改
- $request_method:请求方法
评论