В Интернете существует множество ресурсов об использовании .htaccess для перезаписи ваших поддоменов и, если необходимо, также перезаписи вашего основного домена в подпапку.Я нашел много ответов, и большинство из них точно такие же.Я утомительно тестировал эти методы и у меня во всех случаях одна и та же проблема.
Рассмотрим желаемый результат:
maindomain.com : переписать в / public_html / mainsite /
sub.maindomain.com : переписать в / public_html / sub /
Самый быстрый / чистый способ, который я рассмотрел, следующий:
RewriteEngine On
# Rewrite the main domain
RewriteCond %{HTTP_HOST} !sub.maindomain.com
RewriteCond %{REQUEST_URI} !^/mainsite
RewriteRule ^(.*)$ /mainsite/$1 [L]
# Rewrite the sub domain
RewriteCond %{HTTP_HOST} sub.maindomain.com
RewriteCond %{REQUEST_URI} !^/sub
RewriteRule ^(.*)$ /sub/$1 [L]
Это работает хорошокроме 1 раздражающего вопроса;Строка
RewriteCond %{REQUEST_URI} !^/mainsite
в основном предотвращает цикл перезаписи, но если вы переходите на maindomain.com/mainsite/, он переписывает в / public_html / mainsite / вместо / public_html / mainsite / mainsite / в надежде поднять 404не найдено.Если я удаляю эту строку, я получаю 500 ошибок сервера, когда он входит в цикл: S
Проблема в том, что любой из этих доменов нуждается в свободе создания папок и т. Д. И хотел бы убедиться, чтоабсолютная свобода в подпапках, которые создают люди: S
Пожалуйста, кто-нибудь может помочь здесь?