1
當前的vhost_config.conf具有可以工作的映射和重寫規則,如下所示。帶映射的RewriteMap忽略大小寫
1: RewriteMap vanityURL txt: vanity_map.txt
2: RewriteCond ${vaintyURL:$1|not-found} ^(.+)$
3: RewriteCond %1 ~^not-found$
4: RewriteRule ^/(.*) /${vanityURL:$1|/$1} [L]
我需要做的是讓映射的URLS忽略大小寫。
你會說的第一件事是「add [NC]
」,你認爲這是正確的,但它沒有任何效果。
我已經看到有關將所有映射以小寫形式引入的問題,但是這並不能解決某人在輸入/BlackFriday
或/BlaCKFridAY
(無論出於何種原因可能會被迫做這樣的事情)的問題。
我遇到的問題是,用線如
RewriteRule ^/(.*) /${vanityURL:$1|/$1} [L, NC]
沒有任何影響。
我是否需要在條件之一或映射聲明中提前標記[NC]
?
爲什麼第4行的'ignore-case'標誌不起作用? 還有別的東西,我錯過了?
嗯,確實嵌套工作?從來沒有嘗試過,但像'RewriteMap lc int:tolower',&'$ {vanityURL:$ {lc:$ 1}}'? – Wrikken
如果確實如此,現在所有映射的URL都是小寫字母,而不區分大小寫。 這會使基本問題依然存在。 –
呃,你是_replacing_那部分的url。你只能匹配強制小寫字母。替換有一個固定的情況,不是嗎? – Wrikken