NGinx - 重写匹配字符串而不是第二个 URI 的正确方法
NGinx - Right way to rewrite URI matching a string and not the second
伙计们,
我正在将使用前端 Apache 反向代理的应用程序迁移到 NGinx 反向代理。
我正在尝试找到转换此规则的正确方法:
RewriteCond %{REQUEST_FILENAME} ^/web
RewriteCond %{REQUEST_FILENAME} !^/(.*)-staging/(.*)
RewriteRule /web/?(.*)$ https://mydomainename/ [L,NE,QSA,R=307]
根据我的理解,这意味着“如果请求的文件名以 /web 开头,但不包含字符串 '-staging/',则使用 307 HTTP 重定向到不带 /web 的同一 URI重定向。
我一直在尝试使用位置来获取它,然后使用正则表达式(试图防止使用邪恶 "if"),但没办法,这超出了我的知识范围。
有人能帮我想想如何正确地得到这个吗(网站流量很大,所以,寻找优化的东西),好吗?提前谢谢你。
伙计们,
我正在将使用前端 Apache 反向代理的应用程序迁移到 NGinx 反向代理。
我正在尝试找到转换此规则的正确方法:
RewriteCond %{REQUEST_FILENAME} ^/web
RewriteCond %{REQUEST_FILENAME} !^/(.*)-staging/(.*)
RewriteRule /web/?(.*)$ https://mydomainename/ [L,NE,QSA,R=307]
根据我的理解,这意味着“如果请求的文件名以 /web 开头,但不包含字符串 '-staging/',则使用 307 HTTP 重定向到不带 /web 的同一 URI重定向。
我一直在尝试使用位置来获取它,然后使用正则表达式(试图防止使用邪恶 "if"),但没办法,这超出了我的知识范围。
有人能帮我想想如何正确地得到这个吗(网站流量很大,所以,寻找优化的东西),好吗?提前谢谢你。