nginx配置选项try_files详解

nginx配置选项try_files详解nginx 配置选项 try files 详解一 try files 是 nginx 中 http core 核心模块所带的指令 主要是能替代一些 rewrite 的指令 提高解析效率 官网的文档为 http nginx org en docs http ngx http core module html try files 二 1 try files 的语法规则 格式 1 try

nginx配置选项try_files详解

一.

try_files是nginx中http_core核心模块所带的指令,主要是能替代一些rewrite的指令,提高解析效率。官网的文档为Module ngx_http_core_module

二.

  1.try_files的语法规则:

    格式1:try_files file … uri;  格式2:try_files file … =code;

    可应用的上下文:server,location段

  2.try_files的语法解释:(先贴出官方的解释,楼主再解释下)

Checks the existence of files in the specified order and uses the first found file for request processing; the processing is performed in the current context. The path to a file is constructed from the fileparameter according to the root and alias directives. It is possible to check directory’s existence by specifying a slash at the end of a name, e.g. “$uri/”. If none of the files were found, an internal redirect to the uri specified in the last parameter is made. 

  关键点1:按指定的file顺序查找存在的文件,并使用第一个找到的文件进行请求处理

  关键点2:查找路径是按照给定的root或alias为根路径来查找的

  关键点3:如果给出的file都没有匹配到,则重新请求最后一个参数给定的uri,就是新的location匹配

  关键点4:如果是格式2,如果最后一个参数是 = 404 ,若给出的file都没有匹配到,则最后返回404的响应码

 3.举例说明:

location /images/ {
    root /opt/html/;
    try_files $uri   $uri/  /images/default.gif; 
}
比如 请求 127.0.0.1/images/test.gif 会依次查找 1.文件/opt/html/images/test.gif   2.文件夹 /opt/html/images/test.gif/下的index文件  3. 请求127.0.0.1/images/default.gif

4.其他注意事项
1.try-files 如果不写上 $uri/,当直接访问一个目录路径时,并不会去匹配目录下的索引页  即 访问127.0.0.1/images/ 不会去访问  127.0.0.1/images/index.html 

三.

其他用法:

location / {
    try_files /system/maintenance.html
              $uri $uri/index.html $uri.html
              @mongrel;
}

location @mongrel {
    proxy_pass http://mongrel;
}

以上中若未找到给定顺序的文件,则将会交给location @mongrel处理(相当于匹配到了@mongrel来匹配)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/233239.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 【高精度】【找规律】Gym – 101243B – Hanoi tower

    【高精度】【找规律】Gym – 101243B – Hanoi tower

    2022年3月7日
    34
  • 使用adb命令安装安卓apk包[通俗易懂]

    使用adb命令安装安卓apk包[通俗易懂]虽然网上也有许多adb安装安卓包的教程,但经过自己亲自试了一下后,觉得自己写下来的才是自己的收获。一、下载安装adb工具下载地址有很多,这里是我下载的地址:https://pan.baidu.com/s/1mgGkNZM,下载文件比较齐全。下载后是个压缩包,解压后一共有5个文件,如下图:这里我都是解压到当前文件夹了因为安装包里就有个cmd,所以就省去了在运行中打开cmd,再在cmd中打开adb的步骤了,在要用adb工具时直接点击cmd.exe就可以了。如下有位网友总结的安.

    2022年6月3日
    67
  • 日期函数months_between的用法[通俗易懂]

    日期函数months_between的用法[通俗易懂]MONTHS_BETWEEN(date1,date2)用于计算date1和date2之间有几个月。如果date1在日历中比date2晚,那么MONTHS_BETWEEN()就返回一个正数。如果date1在日历中比date2早,那么MONTHS_BETWEEN()就返回一个负数。如果date1和date2日期一样,那么MONTHS_BET…

    2022年7月12日
    28
  • 希尔排序算法(C语言实现)

    希尔排序算法(C语言实现)希尔排序算法 demo

    2025年6月9日
    0
  • 超分辨率重建总结(超分辨率重建算法程序)

    1.SRCNN:—2,3改进开山之作,三个卷积层,输入图像是低分辨率图像经过双三次(bicubic)插值和高分辨率一个尺寸后输入CNN。图像块的提取和特征表示,特征非线性映射和最终的重建。使用均方误差(MSE)作为损失函数。2.FSRCNN特征提取:低分辨率图像,选取的核9×9设置为5×5。收缩:1×1的卷积核进行降维。非线性映射:用两个串联的3×3的卷积核可以替代一个5×5…

    2022年4月9日
    161
  • oracle中修改表名语句

    oracle中修改表名语句ALTERTABLE旧表名RENAMETO新表名;(大写为系统命令)

    2022年5月17日
    34

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号