匹配…用nginx重写规则中的字符

我有一个问题,有人添加了一个链接到我们的网站 – 但它被切断。 我在日志文件中看到:

/info-cry%E2%80%A6 

看到我知道那是什么意思,我试图在我的nginxconfiguration中为它创build一个重写规则。 我已经尝试了下面两个:

 rewrite ^/info-cry%E2%80%A6 https://example.com/info-cryptex-16gb-usb-drive-587.html permanent; rewrite ^/info-cry… https://example.com/info-cryptex-16gb-usb-drive-587.html permanent; 

..但它永远不会匹配(只显示我们的自定义404页面)。 有什么办法可以做到这一点? 我真的想让它工作 – 因为我们得到了很多点击到破损的url

真奇怪。 在Ubuntu 15.04的所有默认模块nginx 1.6.2上,我可以做到

 location / { rewrite ^/foo… http://example.com permanent; } 

…并获得预期的redirect。

假设你已经重新加载nginx并且禁用了你的浏览器caching,你确定重写是在一个匹配/info-cry…的位置块中发生的吗? 也可能需要在定义一个位置块的正则expression式中加上 (*UTF8)