我正在尝试让Apache RewriteCond在执行dbm匹配时忽略大小写。
但是,当我在httpd restart上执行Apache引擎错误而没有任何有意义的帮助消息时,我尝试了以下内容:
RewriteEngine On
RewriteMap lc int:lower
...
RewriteMap ya_item dbm:/etc/httpd/maps/web031034/ItemRedirects.db
RewriteCond %{HTTPS} off
RewriteCond ${ya_item:$1} ^(?!\s*$).+ [NC]
RewriteCond ${ya_item:$1} ^${lc:(?!\s*$).+} [NC]
RewriteRule ^(.*)$ https://%{SERVER_NAME}%0 [NC,L,R=301]
RewriteCond ${ya_item:$1} ^(?!\s*$).+ [NC]
RewriteCond ${ya_item:$1} ^${lc:(?!\s*$).+} [NC]
RewriteRule ^(.*)$ %0 [NC,L,R=301]
db文件是从全小写文本文件编译的(httxt2dbm),该文件具有从此到此URL的映射。如果网址是在浏览器上以小写字母输入或通过尖叫的青蛙输入,那就可以了。如果案件以任何方式混合,则找不到匹配。