У меня есть несколько доменов, работающих на установке Wordpress, с другими сайтами, также размещенными в том же пространстве, которые являются чистыми html.
Я хочу создать набор правил перезаписи htaccess, которые начинаются с "www" на URL, если у него его еще нет, а затем перенаправить на https для указанных c доменных имен, но не для других.
Я написал следующий код, который мне кажется логически правильным, но вызывает проблемы при его развертывании:
# Check to see if the hostname begins with www. If not, add "www" then move to the next Rule
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1
# Check to see if the hostname is one of three different domains, using RegEx
# If they are, then change to "https",permanently redirect and stop processing rules
RewriteCond %{HTTP_HOST} ^www\.(domain1\.co|domain2\.co|domain3)\.uk [NC]
RewriteRule (.*) https://%{HTTP_HOST}/$1 [L,R=301]
# Check to see if the protocol is https AND if the hostname is not one of the https domains
# If they are, then change to "http", permanently redirect and stop processing rules
RewriteCond %{HTTPS} on [NC]
RewriteCond %{HTTP_HOST} !^www\.(domain1\.co|domain2\.co|domain3)\.uk [NC]
RewriteRule (.*) http://%{HTTP_HOST}/$1 [L,R=301]
#BEGIN WordPress
RewriteBase /
RewriteRule ^index\.php$ - [L]
# add a trailing slash to /wp-admin
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).*) web/$1 [L]
RewriteRule ^(.*\.php)$ web/$1 [L]
RewriteRule . index.php [L]
# END WordPress
Появляющиеся ошибки указывают на то, что я получаю перенаправление l oop, в результате чего ни один из сайтов Wordpress недоступен. Любые подсказки?