.htaccess - предотвратяване на частично/пълно RewriteRule да действа в подпапка

Имам .htaccess в основата на моя уебсайт с много условия на RewriteRule за целите на сигурността. Един от тях, например, е следният:

RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [NC,OR]
RewriteCond %{QUERY_STRING} ^.*(globals|encode|localhost|loopback).* [NC,OR]
RewriteCond %{QUERY_STRING} ^.*(md5|benchmark|cast|request|select|insert|union|declare|drop).* [NC] 
RewriteRule ^(.*)$ - [F,L]

Бих искал да разреша md5|benchmark в подпапка и да разреша цялото следното в друга подпапка:

RewriteCond %{QUERY_STRING} ^.*(globals|encode|localhost|loopback).* [NC,OR]

Как мога да отменя част от такова RewriteRule или цяло?


person Oliver    schedule 23.05.2014    source източник


Отговори (1)


В /subfolder1/.htaccess има това правило:

RewriteEngine On

RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [NC,OR]
RewriteCond %{QUERY_STRING} ^.*(globals|encode|localhost|loopback).* [NC,OR]
RewriteCond %{QUERY_STRING} ^.*(cast|request|select|insert|union|declare|drop).* [NC] 
RewriteRule ^ - [F,L]

В /subfolder2/.htaccess има това правило:

RewriteEngine On

RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [NC,OR]
RewriteCond %{QUERY_STRING} ^.*(md5|benchmark|cast|request|select|insert|union|declare|drop).* [NC] 
RewriteRule ^ - [F,L]
person anubhava    schedule 24.05.2014