架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 7292|回复: 0

[Web] nginx try_files 配置详解

[复制链接]
发表于 2021-11-3 16:04:08 | 显示全部楼层 |阅读模式
try_files 去尝试到网站目录读取用户访问的文件,如果第一个变量存在,就直接返回;不存在继续读取第二个变量,如果存在,直接返回;不存在直接跳转到第三个参数上。

try_files 配置如下:


当用户请求 http://localhost/example 时,这里的 $uri 就是 /example。
try_files 会到硬盘里尝试找这个文件。如果存在名为 /$root/example(其中 $root 是项目代码安装目录)的文件,就直接把这个文件的内容发送给用户。
显然,目录中没有叫 example 的文件。然后就看 $uri/,增加了一个 /,也就是看有没有名为 /$root/example/ 的目录。
又找不到,就会 fall back 到 try_files 的最后一个选项 /index.php,发起一个内部 “子请求”,也就是相当于 nginx 发起一个 HTTP 请求到 http://localhost/index.html

测试如下:

QQ截图20211103155115.jpg QQ截图20211103155257.jpg

此配置一般用作反向代理前端界面设置(vue、angular),因为点击前端页面,浏览器的 url 地址会变,其实浏览器并没有刷新页面和访问新的页面,此时,刷新浏览器会报 404 错误,因为,访问的路径在物理磁盘上并不存在。

解决前端(Vue)部署在Nginx上,不能F5刷新的问题

文档:http://nginx.org/en/docs/http/ngx_http_core_module.html#try_files





上一篇:Linux chown 修改文件夹所属用户名和用户组
下一篇:Windows 下使用 Pandoc 批量将 Markdown 转为 Word 文档
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2024-4-20 12:40

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表