.htaccess - поддомены ломаются при попытке форсировать www - PullRequest
0 голосов
/ 09 сентября 2018
Файл

My .htaccess разбивает субдомены, если они размещены в каталоге public_html вместе с основным доменом. Это со старым хостом, который по умолчанию не поменял местами пользователя root (выше public_html).

Кажется, что более обновленные хосты, такие как Hostgator, использующий более новую cPanel, размещают субдомены на том же уровне, что и public_html, а не внутри него. Мне это нравится, так как htaccess основного сайта не влияет на него!

К сожалению, у клиента есть более старый хост, и он заставляет поддомен внутри public_html.

Вот мой htaccess: Суть

Options -Indexes

RewriteEngine On

# This goes first!
# Force www prefix
RewriteCond %{HTTP_HOST} !^(www\.)(.*) [NC]
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]

# This goes second!
RewriteCond %{HTTPS} !=on

# Exclude SSL validation paths
RewriteCond %{REQUEST_URI} !^/\.well-known/acme-challenge/[0-9a-zA-Z_-]+$
RewriteCond %{REQUEST_URI} !^/\.well-known/cpanel-dcv/[0-9a-zA-Z_-]+$
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/[A-F0-9] 
{32}\.txt(?:\ Comodo\ DCV)?$

# Force HTTPS
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R=301,L]

Я думаю, что речь идет о строках 7 и 8.

Что он делает:

Перенаправляет на URL-адрес, подобный этому, и выдает ошибку 500: https://www.images.example.com/images.example.com/

Я не хочу никаких жестко закодированных параметров (доменное имя или имя поддомена).

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