Я сталкиваюсь с проблемой, из-за которой мои субдомены неправильно получают www
, добавленное к ним через правило перезаписи htaccess ...
Моя структура папок выглядит следующим образом:
/public_html/index.html
(страница обслуживания на всякий случай)
/public_html/.htaccess
/public_html/websitename
/public_html/subdomain
/public_html/testsite
/public_html/clone
Мой /public_html/
, который находится в моем .htaccess
выглядит следующим образом
# Force HTTPS & WWW
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://www.%1%{REQUEST_URI} [L,NE,R=301]
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} websitename.com$ [NC]
RewriteRule ^(.*)$ /websitename/$1 [L]
RewriteEngine On
RewriteCond %{HTTP_HOST} subdomain.website.com$ [NC]
RewriteRule ^(.*)$ /subdomain/$1 [L]
</IfModule>
Что отлично работает для websitename.com
, что заставляет URL переписать на https://www.websitename.com
Однако это приводит к тому, что мои субдомены неправильно переписываются в https://www.subdomain.websitename.com
, когда должно быть https://subdomain.websitename.com
Я не хочу помещать принудительное использование HTTPS и WWW в отдельные папки веб-сайта ... Скорее, я ищу решение сделать subdomain
освобождающим от перезаписи править.
Я попытался добавить следующее условие, но это не помогло:
RewriteCond %{HTTP_HOST} subdomain.websitename.com$ [NC]
Кто-нибудь знает, что я могу сделать, чтобы обойти эту проблему?