Как я могу перенаправить ВСЕ URL-адреса на www and только указанные c URL-адреса на https для мультисайта Wordpress - PullRequest
0 голосов
/ 29 марта 2020

У меня есть несколько доменов, работающих на установке 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 недоступен. Любые подсказки?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...