nginx:将URL中的"%23"等特殊字符重定向到"#"



我的nginx网站有一些不好的链接指向它,像这样:

  • /some-page%23some-part
  • /some-page">

这是导致404和谷歌网站管理员工具抱怨。

URL /some-page#some-part 得到正确处理并工作。

我怎么能让nginx重定向%23在一个URL到# ?">垃圾呢?

外面的链接不能改变,所以我正在寻找301重定向他们自己。

谢谢!

编辑:感谢Deadooshka的帮助。我的工作解决方案,rewrite ^(.*)#(.*)$ /$1#$2 redirect;,在他的回答的评论线程中讨论。

未测试。我不确定哪些符号符合这个模式。

rewrite ^/([^#]+)#([^#]+)$ /$1#$2 redirect;
rewrite '^/([^&]+)">$' /$1 redirect;

最新更新