Переадресация с www у мульдоменного тисайта

Доброго дня всем.

Очень сильно прошу откликнуться всех, кто сталкивался с мультидоменами и редиректами. Итак, пришел на ремонт сайт с мультиподдоменами по направлениям деятельности. Сам по себе очень сильно грузит сервер, хотя в нем буквально в сумме около 1000 страниц, что в целом уже странно. Сайт-горемыка писался и дописывался многими людьми, я же пытаюсь его разогнать, очистить от мусора и настроить для SEO-шников. Вот по 1-му очень важному пункту требование, чтобы все домены и поддомен редиректились с www.site.ru на site.ru. По сути банально простая задача, ан нет…

Прописаны контексты. Файл index.php тоже имеет нужное, как описано в инструкциях.

switch(strtolower(MODX_HTTP_HOST)) {
   case 'shop.pit-stop.by:80':
   case 'shop.pit-stop.by':
      $modx->initialize('shop');
      break;
    case 'blog.pit-stop.by:80':
    case 'blog.pit-stop.by':
      $modx->initialize('blog');
      break;
	case 'edu.pit-stop.by:80':
    case 'edu.pit-stop.by':
      $modx->initialize('edu');
      break;
	case 'service.pit-stop.by:80':
    case 'service.pit-stop.by':
      $modx->initialize('service');
      break;
    case 'furniture.pit-stop.by:80':
    case 'furniture.pit-stop.by':
      $modx->initialize('furniture');
      break;
	case 'soft.pit-stop.by:80':
    case 'soft.pit-stop.by':
      $modx->initialize('soft');
      break;
   case 'pit-stop.by:80':
   case 'pit-stop.by':
      $modx->initialize('web');
      break;
   default:
       $modx->initialize('web');
       
      if ( !empty($_REQUEST) && $_REQUEST['q'] === 'robots.txt' ) {
         $modx->initialize('web');
         break;
      }
}
И вроде не было бы беды, да не редиректят поддомены с www.site на site. С основным доменом вообще проблем нет — отлично выбрасывает www.

Хостинг — ISP panel. Включила модуль Апач2. Пишу в htaccess

#Options +FollowSymLinks
RewriteEngine On
RewriteBase /

DirectoryIndex index.php

ServerSignature Off

# The Friendly URLs part
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
# Прячем index php
RewriteCond %{REQUEST_URI} ^(.*)/index\.php$
RewriteRule ^(.*)index\.php$ http://%{HTTP_HOST}/$1 [R=301,L]

#переадресация с www на #
RewriteCond %{HTTP_HOST} .
RewriteCond %{HTTP_HOST} ^www.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
Но в результате все поддомены на www.shop.pit-stop.by/ открывают ERR_NAME_NOT_RESOLVED.

Причем все последующие сео-правила и плюшки хостинг ест, а редиректа с www нет как нет.

Пробовала и так:

# Редирект www.site1.ru -> site1.ru
RewriteCond %{HTTP_HOST}    ^pit\-stop\.by [NC]
RewriteRule ^/?(.*)         http://pit-stop.by/$1 [R=301,L]
 
# Редирект всех остальных www -> non-www, кроме site1.ru
RewriteCond %{HTTP_HOST}    !^www\.pit\-stop\.by [NC]
RewriteCond %{HTTP_HOST}    ^www\.(.*)$ [NC]
RewriteRule ^(.*)$          http://%1/$1 [R=301,L]
Тоже никакого эффекта. Даже в index.php пыталась дописать case 'www.shop.pit-stop.by': да не помогло.
Стали с хостером разбираться. Переключили модуль Apache на FastCGI (Nginx + PHP-FPM), написали
if ($host = 'www.pit-stop.by' ) {
rewrite ^ http://pit-stop.by$uri permanent;
}
и даже так
 if ($host = 'www.shop.pit-stop.by' ) {
rewrite ^ http://shop.pit-stop.by$uri permanent;
}
На выходе еще больше косяков: админка режет адрес до manager, все домены и поддомены ссылаются на shop.pit-stop.by.

В общем своими силами решения не нашли. Товарищи, выручайте! Какие есть мысли с поддоменами, генерируемыми на уровне самого MODX REVO? Поделитесь рабочими кодами хтацеса или nigx, пожаааалуйста…
varanika
14 июня 2017, 07:24
modx.pro
803
0

Комментарии: 0

Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
0