проблемы с перенаправлением modx

я разработал сайт с modx в поддомене 2012.m-y-d-o-m-a-i-n.de. Старый сайт работал по адресу oldsite.m-y-d-o-m-a-i-n.de. Сайт был перенаправлен с mydomain.net (без тире) на oldsite.m-y-d-o-m-a-i-n.net. вчера админ сайта переключился на новостной сайт 2012.m-y-d-o-m-a-i-n.net. FURL включен и в htaccess у меня такой код:

<IfModule mod_rewrite.c>
  Options +FollowSymlinks
  RewriteEngine On
  # Friendly URLs
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
</IfModule>

Редирект работает, но все ссылки ведут на 2012.м-г-д-о-м-а-и-н-де. Как я могу научить modx новой переменной siteURL. Я снова использовал настройку и несколько раз очищал кеш, но сайт по-прежнему считает, что он находится в поддомене m-y-d-o-m-a-i-n-de. Субдомен должен исчезнуть из каждого URL. Обе записи DNS работают на одном и том же сервере. Спасибо за помощь


person Johannes    schedule 21.01.2012    source источник
comment
Это MODx Evolution или Revolution?   -  person okyanet    schedule 22.01.2012
comment
Ваш вопрос не имеет особого смысла. Он изобилует неправильно используемыми техническими терминами, что делает его совершенно нечитаемым. Укажите, какие URL-адреса у вас были, какие URL-адреса у вас есть сейчас и куда вы хотите перенаправлять каждый URL-адрес.   -  person Gerben    schedule 22.01.2012
comment
Это модная революция. Попробую еще раз объяснить, действительно я что-то напутал: у меня modx установлен под 2012.m-y-d-o-m-a-i-n.de. Там редирект с www.anotherurl.tld Сайт домой вызывается и работает - видимо через воронку все попадания на home-метод. Wayfinder создает меню с 2012.m-y-d-o-m-a-i-n.de, потому что [[$siteurl]] показывает этот домен. Я не хочу настраивать свой htaccess или modx, чтобы все работало с www.anotherurl.tld. Как я мог этого добиться. Извините, что я путаю субдомен и все такое. Спасибо за помощь   -  person Johannes    schedule 22.01.2012


Ответы (3)


Обычное решение — добавить этот тег в раздел head всех шаблонов:

<base href="[[++site_url]]" />

Вам не нужно добавлять какие-либо определения. MODX будет вычислять site_url на основе URL-адреса, по которому заходит пользователь (после перенаправления). Жесткое кодирование site_url вызовет проблемы, если вы переместите сайт.

Вы также должны раскомментировать часть .htaccess, которая принудительно использует www или non-www URL-адреса. Без этого MODX может потерять сеанс, если пользователь переключится с одного на другой.

person Bob Ray    schedule 09.04.2016

Вы хотите настроить правило в файле .htaccess, которое будет проверять входящий URL-адрес и перенаправлять его на www.mydomain.de, если это еще не так.

Поместите этот код перед комментарием # Friendly URLs в существующий файл .htaccess:

RewriteCond %{HTTP_HOST} .
RewriteCond %{HTTP_HOST} !^(www)\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

Это перехватит http://2012.mydomain.de, http://2011.mydomain.de, http://mydomain.de и т. д., а код 301 сообщит сканерам, что субдомен навсегда перемещен в домен www.

person okyanet    schedule 30.01.2012

Проверьте core/config/config.inc.php, посмотрите, есть ли там ваш старый домен. Если он по-прежнему получает неправильный домен, добавьте определения, чтобы установить URL-адрес вашего сайта и хост, как вам нужно, примерно в строке 23:

define('MODX_HTTP_HOST','www.YOURDOMAIN.com');
define('MODX_SITE_URL','http://www.YOURDOMAIN.com/');
person troseman    schedule 11.02.2012