Apache Rewrite условие - есть идеи? - PullRequest
0 голосов
/ 25 мая 2011
<VirtualHost _default_:80>

<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine on
RewriteMap  lc int:tolower
RewriteCond %{REQUEST_URI} [A-Z]
RewriteRule (.*) ${lc:$1} [R=301,L]
</IfModule>

</VirtualHost>

Это изменяет весь URI запроса в нижний регистр. Я хочу, чтобы это произошло для конкретной папки (/css), но RewriteMap не работает в .htaccess. Я новичок в регулярных выражениях и переписать. Мне нужен RewriteCond, который проверяет только /css/<any subfolder> and/or <files>. Может ли тело помочь?

EDIT:

<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine on
RewriteMap  lc int:tolower
RewriteCond %{REQUEST_URI} [A-Z]
RewriteCond %{REQUEST_URI} ^/css/
RewriteRule (.*) ${lc:$1} [R=301,L]
</IfModule>

Кажется, это нормально работает для определенной папки - /css/. Не уверен, что это глупо

</VirtualHost>

1 Ответ

0 голосов
/ 25 мая 2011

^ / CSS /

CondPattern - это регулярное выражение, совместимое с perl

http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html#rewritecond

RewriteCond% {REQUEST_URI} ^ / css /

...