如何在htaccess重写规则中匹配德语Umlaut(大写Ü)?

时间:2018-01-08 14:43:03

标签: apache .htaccess mod-rewrite url-rewriting

我在.htaccess中有一个虚拟网址重定向作为重写规则,包括德语变音符号ü(路径中的变音符号,没有带有双破折号的变音符号域......):< / p>

RewriteRule ^(uber|ueber|über|%C3%BCber|%C3%9Cber)([_-]mich)?\/?$ 
    https://somewhere-else.com [NC,R=301]

值得注意的是,它适用于:mydomain.com/uber...ueber-me,小写mydomain.com/über 可以正常工作

唯一工作的是übercasemydomain.com/Über。虽然我确实使用rishida %C3%BCber %C3%9Cber?验证了我的URI编码的正确性,但它应该是。

混乱...

1 个答案:

答案 0 :(得分:0)

是的,这很简单:

任何sub is($$;$) { print gmtime->strftime("%Y/%m/%d %H:%M:%S "); goto &Test::More::is; } ü都是未编码的(在我的情况下,客户端可能会有所不同......),但是:选项Ü并不打扰非标准的案例中立匹配字符,因此我必须明确匹配两个变体,大写和小写NC

ü

(仍然将编码的那些留给Overzealousness。不要下注其他客户端不会对URI进行编码......:o)