如何将nginx配置为try_files首先,如果不存在,请遵循request_uri

QWJ QWJ

我们具有ID分区和子域的页面缓存。说出诸如ny.site.com/cat/12345或之类的请求la.site.com/dog/234,nginx需要

  1. 检查文件是否/cat/ny/1234/5.html存在,返回
  2. 否则,只需使用原始request_uri文件打入应用程序服务器,就会创建缓存文件

我们设法弄清楚了子域和id分区部分,但是try_files部分没有任何运气。总是出现不确定的循环错误,例如rewrite or internal redirection cycle while internally redirecting to

我们的nginx.conf文件就像

rewrite "/cat/([0-9]{4})([0-9]{1,4})" /system/cache/cat/$subdomain/$1/$2.html break;
rewrite "/cat/([0-9]{1,4})" /system/cache/cat/$subdomain/$1.html break;
try_files $uri $request_uri;

有什么提示吗?谢谢!

更新:我尝试了以下方法。Nginx在文件系统中寻找$ request_uri(例如/ cat / 12345),而不是点击应用服务器。有什么想法吗?

try_files $uri @old;
location @old {
    rewrite ^ $request_uri break;
}
surajs21

试试这个

location ^~ ^/cat/([0-9]{4})([0-9]{1,4}) {

    try_files "/cat/ny/$1/$2.html" @app_server;

}
location @app_server{

    # pass this to your app server for processing.

}
  1. 使用^〜,因为这还将包括/ cat / 12345 /(斜杠)这样的边缘情况。
  2. 并且只需确定要使用$ uri(不包含查询字符串)还是$ request_uri(包含查询字符串)即可。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Nginx使用try_files将对不存在文件的所有请求重写为index.php

来自分类Dev

如何将IntelliJ配置为不存在安全问题?

来自分类Dev

如果文件存在,Nginx如何才能使用try_files?

来自分类Dev

如何缩短此 nginx try_files 配置?

来自分类Dev

Nginx干净的URL,如何使用try_files将文件夹重写为参数

来自分类Dev

如果使用左联接表中不存在数据,如何将记录显示为空

来自分类Dev

是否可以将ssh配置为使用密钥登录(如果存在)或使用密码(如果不存在)登录?

来自分类Dev

如果我的TempData [不存在,如何将其设置为特定值

来自分类Dev

Nginx:如何将不存在的 .php 文件重写为 index.php?

来自分类Dev

在Redshift中,如何将CTAS与“如果不存在”子句结合起来?

来自分类Dev

mongodb mongoose-如果字段不存在,如何将文档添加到数组

来自分类Dev

Shell脚本:如果文件不存在,如何将多行内容写入文件?

来自分类Dev

如果项目不存在,如何将项目推入我的数组?

来自分类Dev

Mongodb:如果值不存在,如何将值添加到数组,但如果值存在,则更新值

来自分类Dev

正则表达式,如果不存在某些东西,如何将其匹配为true?

来自分类Dev

MySQL-“如果不存在,请插入”查询?

来自分类Dev

如果访问中不存在,请插入

来自分类Dev

MySQL和HSQLDB中的“如果不存在,请插入”

来自分类Dev

如果该值尚不存在,请插入

来自分类Dev

如果尚不存在,请“即时”保存相关条目

来自分类Dev

MySQL和HSQLDB中的“如果不存在,请插入”

来自分类Dev

STL结构:“如果不存在,请插入”操作?

来自分类Dev

如果不存在,请插入多个选择语句

来自分类Dev

.htaccess-如果URL中不存在字符串,如何将字符串插入地址

来自分类Dev

如何将属性添加到dynamoDB表项(如果不存在)并为该属性添加值?

来自分类Dev

如何将属性添加到dynamoDB表项(如果不存在)并为该属性添加值?

来自分类Dev

如何将属性添加到dynamoDB表项(如果不存在)并为该属性添加值?

来自分类Dev

如何将属性添加到dynamoDB表项(如果不存在)并为该属性添加值?

来自分类Dev

NGINX try_files后备

Related 相关文章

  1. 1

    使用Nginx使用try_files将对不存在文件的所有请求重写为index.php

  2. 2

    如何将IntelliJ配置为不存在安全问题?

  3. 3

    如果文件存在,Nginx如何才能使用try_files?

  4. 4

    如何缩短此 nginx try_files 配置?

  5. 5

    Nginx干净的URL,如何使用try_files将文件夹重写为参数

  6. 6

    如果使用左联接表中不存在数据,如何将记录显示为空

  7. 7

    是否可以将ssh配置为使用密钥登录(如果存在)或使用密码(如果不存在)登录?

  8. 8

    如果我的TempData [不存在,如何将其设置为特定值

  9. 9

    Nginx:如何将不存在的 .php 文件重写为 index.php?

  10. 10

    在Redshift中,如何将CTAS与“如果不存在”子句结合起来?

  11. 11

    mongodb mongoose-如果字段不存在,如何将文档添加到数组

  12. 12

    Shell脚本:如果文件不存在,如何将多行内容写入文件?

  13. 13

    如果项目不存在,如何将项目推入我的数组?

  14. 14

    Mongodb:如果值不存在,如何将值添加到数组,但如果值存在,则更新值

  15. 15

    正则表达式,如果不存在某些东西,如何将其匹配为true?

  16. 16

    MySQL-“如果不存在,请插入”查询?

  17. 17

    如果访问中不存在,请插入

  18. 18

    MySQL和HSQLDB中的“如果不存在,请插入”

  19. 19

    如果该值尚不存在,请插入

  20. 20

    如果尚不存在,请“即时”保存相关条目

  21. 21

    MySQL和HSQLDB中的“如果不存在,请插入”

  22. 22

    STL结构:“如果不存在,请插入”操作?

  23. 23

    如果不存在,请插入多个选择语句

  24. 24

    .htaccess-如果URL中不存在字符串,如何将字符串插入地址

  25. 25

    如何将属性添加到dynamoDB表项(如果不存在)并为该属性添加值?

  26. 26

    如何将属性添加到dynamoDB表项(如果不存在)并为该属性添加值?

  27. 27

    如何将属性添加到dynamoDB表项(如果不存在)并为该属性添加值?

  28. 28

    如何将属性添加到dynamoDB表项(如果不存在)并为该属性添加值?

  29. 29

    NGINX try_files后备

热门标签

归档