lex-romanow
@lex-romanow
Разработчик

Автоматические субдомена, как верно объеденить 2 куска кода .htaccess?

Всем привет. Перелопатил кучу мануалов, пообщался с техподдержкой, в итоге имею некоторое представление, но все же нужна ваша помощь в доведении кода .htaccess до ума.

Размещаюсь на виртуальном сервере - freehost.com.ua. Вот что они пишут для автоматических субдоменов - freehost.com.ua/faq/faq/kak-aktivirovat-optsiyu-ne.... Т.е. все папки в корне главного домена становятся субдоменами - бред! Техподдержка подсказала, что можно в корне создать папку subdomains и в ней уже добавлять подпапки, они и будут субдоменами. Вариант тот что нужен, вот их исправленный вариант кода .htaccess.

RewriteEngine On
RewriteCond %{ENV:REDIRECT_STATUS} !^$
RewriteRule .* - [L]

RewriteCond %{HTTP_HOST} !^www\.example\.com$
RewriteCond %{HTTP_HOST} ^([^.]*)\.example\.com$
RewriteCond %{REQUEST_URI} !^/subdomains
RewriteRule ^(.*)$ /subdomains/%1/$1 [QSA,L]

Покажу теперь мой .htaccess лежащий в корне главного домена.

#Устанавливаем кодировку сайта
AddDefaultCharset utf-8

#Переадресации при разных ошибках
ErrorDocument 403 http://example.com/
ErrorDocument 404 http://example.com/

#Скрываем содержимое папок
Options All -Indexes

#Включаем преобразование ссылок
RewriteEngine on

#Склеиваем www с основным доменом
RewriteCond %{HTTP_HOST} ^www.example.com$ [NC]
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]

#Склеиваем index.php с доменом
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ / [R=301,L]

#Принудительная подстановка замыкающего слеша
RewriteCond %{REQUEST_URI} /+[^\.]+$
RewriteRule ^(.+[^/])$ %{REQUEST_URI}/ [R=301,L]

#Ловим переменные из урл
RewriteRule ^(.*)(\/|\.html)$ index.php?data=$1&last=$2 [L,QSA]

Как теперь корректно объединить 2 куска кода, дабы все работало без ошибок? Может мой код и код техподдержки не совсем корректен, то прошу помочь исправить. Спасибо.
  • Вопрос задан
  • 108 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы