如何将.htaccess规则重写为URL减去一个字符?

如何将.htaccess规则重写为URL减去一个字符?,.htaccess,mod-rewrite,.htaccess,Mod Rewrite,发送了一份通讯,其中包含一个令牌生成的登录URL。意外地,一个结束方括号]被放置为URL的最后一个字符,登录链接现在无法工作。如何将带右方括号的URL重定向到不带方括号的相同URL?您可以使用以下规则: RewriteEngine On RewriteRule ^(.+?)]$ /$1 [R=301,L,NE] 您可以使用此规则: RewriteEngine On RewriteRule ^(.+?)]$ /$1 [R=301,L,NE] 您可以使用mod_别名和重定向匹配指令,也可以使

发送了一份通讯,其中包含一个令牌生成的登录URL。意外地,一个结束方括号]被放置为URL的最后一个字符,登录链接现在无法工作。如何将带右方括号的URL重定向到不带方括号的相同URL?

您可以使用以下规则:

RewriteEngine On

RewriteRule ^(.+?)]$ /$1 [R=301,L,NE]
您可以使用此规则:

RewriteEngine On

RewriteRule ^(.+?)]$ /$1 [R=301,L,NE]

您可以使用mod_别名和
重定向匹配
指令,也可以使用mod_重写和
重写规则
指令。如果您已经在其他地方使用mod_rewrite,那么坚持使用mod_rewrite可能更为谨慎,否则这无关紧要:

RedirectMatch 301 ^/(.*)\]$ /$1 


您可以使用mod_别名和
重定向匹配
指令,也可以使用mod_重写和
重写规则
指令。如果您已经在其他地方使用mod_rewrite,那么坚持使用mod_rewrite可能更为谨慎,否则这无关紧要:

RedirectMatch 301 ^/(.*)\]$ /$1 


规则是好的。我想是逃逸的斜杠造成的。重写规则很好。我想是逃跑的刀砍造成的。