Как 301 корневой сайт в новую папку, но разрешить новый сайт в корневой - PullRequest
0 голосов
/ 08 июля 2010

Хорошо, давайте посмотрим, смогу ли я объяснить это легко

У меня есть форум, который был размещен как моя домашняя страница на www.mysite.com соответственно.Он хорошо проиндексирован, и я не хотел бы терять какой-либо рейтинг.

Сегодня я переместил весь корневой сайт из корневого домена на www.mysite.com/forum, чтобы освободить место для нашей новой системы CMS, которая теперь будетдомашняя страница(Это для того, чтобы помочь новым пользователям и легко направлять посетителей в наш новый магазин)

В настоящее время я использую это в своем файле htaccess

    RewriteEngine on

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

Как вы можете видеть, это помогает перенаправлениявсе еще разрешая мне получить доступ к cms, расположенной в / home

Вот вопрос на миллион долларов:

Есть ли способ поместить CMS в корневой домен, продолжая перенаправлятьвсе старые ссылки на форуме?Я ценю вашу помощь и надеюсь, что я все правильно объяснил :)

Ответы [ 2 ]

0 голосов
/ 08 июля 2010
  1. Установить перенаправление на /forum/* для всех запросов, кроме /*?no_redirect.
  2. Напишите обработчик ошибок 404 для каталога / forum. Он должен перенаправить пользователя на /[requested_url]?no_redirect.
0 голосов
/ 08 июля 2010

Это заняло бы немало работы.

Ваш HTTP-сервер не будет знать разницу между http://www.mysite.com/ (старая ссылка на форум) и http://www.mysite.com/ (новая ссылка CMS).

Однако, и это большое значение, вы можете перенаправить все http://www.mysite.com/forum-link на http://www.mysite.com/forum/forum-link. Возможно, вам придется написать RewriteRule для каждого уникального forum-link, который у вас есть.

Еще одна лучшая возможность - разместить новые страницы CMS на http://www.mysite.com/cms и перенаправить туда http://www.mysite.com.

...