nginx - nginx转义(+)登录重写规则
问题描述
我正在尝试根据我的 Nginx 配置中的图像名称重定向一些点击。
这是它现在的样子:
location / {
rewrite ^/static-v3/(.*)/creditcard_sslseals_public.png https://somenewurl.com/credit-card-seals.png permanent;
rewrite ^/static-v3/(.*)/creditcard+sslseals_public.png https://somenewurl.com/credit-card-seals.png permanent;
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
}
所以文件名的第一个条件creditcard_sslseals_public.png
正常工作,但第二个条件不工作,因为+
图像名称中有一个符号creditcard+sslseals_public.png
,所以我得到一个 404。
如何在第二种情况下逃避 + ,但在之前保留正则表达式^/static-v3/(.*)
?
解决方案
在+
正则表达式中有特殊含义,需要转义。
一种选择是使用反斜杠来转义字符:
^/static-v3/(.*)/creditcard\+sslseals_public.png
或者,创建一个只包含一个字符的字符类:
^/static-v3/(.*)/creditcard[+]sslseals_public.png
推荐阅读
- asp.net-core - 如何在 Asp.Net Core 中限制控制器操作和区域中的参数类型
- php - 更改 WooCommerce 中没有特定产品的“暂停”订单的订单状态
- pine-script - 'ema' 函数中的 'length' 参数 (0) 的值无效。它必须 > 0
- linux - 如何在shell脚本中的csv文件的开头添加新行
- linux - EOF 中的 bash 脚本无法将参数传递给函数
- html - CSS Grid问题:底部元素在顶部元素上方结束
- python - 如何在joblib的缓存中显式设置返回值?
- android-ndk - 关于在Android.bp中使用预建的第三个库的问题
- python - OperationalError at / no such column: core_book.average_rating
- reactjs - 如何使用 react 和 webpack 创建可配置的构建?