Пока нельзя остановить выполнение .htaccess в http://example.com
Вы МОЖЕТЕ поместить другой .htaccess в http://example.com/site2/, и любое созданное здесь правило, которое переопределяет правила в .htaccess родительской папки, будет выполнено здесь, но не в родительской папке.
Например, недавно у меня был случай, когда я переписывал любую версию моего основного сайта без www, которую мы назовем example.com в ее эквиваленте www: www.example.com
Проблема, которую это вызвало, заключается в том, что любой, кто посещает мой второй сайт, который мы назовем site2.com, фактически перенаправит пользователя на www.example.com/site2.com/, даже если пользователь заходит на site2.com ИЛИ www. site2.com ИЛИ http://www.site2.com в адресной строке своего браузера
Что мне нужно было сделать, это внести изменения в 2 файла .htaccess, сначала в корень http://www.example.com, а затем в отдельный .htaccess, расположенный в http://www.example.com/site2.com/
1) http://www.example.com .htaccess:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
2) http://www.site2.com (http://www.example.com/site2.com/) .htaccess (также используется версия www site2.com):
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.site2\.com$ [NC]
RewriteRule ^(.*)$ http://www.site2.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^site2\.example\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.example\.com/site2\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.site2\.example\.com$
RewriteRule ^/?$ "http\:\/\/www\.site2\.com\/" [R=301,L]
Не стесняйтесь разорвать моего регулярного выражения, я ни в коем случае не мастер регулярных выражений. Я также понимаю, что это может создать 2 или, возможно, больше дополнительных перенаправлений, но это единственный способ заставить это работать, без переназначения моего DocumentRoot через хост ... что, вероятно, является лучшим вариантом, если ваш хост может это сделать, мой был бы / не мог ...