Перенаправить URL на другой URL - PullRequest
3 голосов
/ 03 августа 2010

У меня есть следующая страница, на которую пользователь может перейти, где этот URL существует в его электронном письме.

Например: http://www.abc.example/yourdetails.html

Мой вопрос: мне сказали, что все это веб-приложение перемещается в новый домен, т.е.

http://www.xyz.example/yourdetails.html

Предположим, что нет проблем с доступом к двум доменам в сети (интранет), как я могу перенаправить пользователя при нажатии на ссылку в письме, которое больше не является правильной ссылкой для фактического вызова нового URL: *

http://www.abc.example/yourdetails.html

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

Ответы [ 9 ]

4 голосов
/ 03 августа 2010
  1. Если сайт не меняет структуру, вы можете указать домену xyz.com на abc.com в DNS.

  2. Я думаю, вы можете настроить apache, используя modrewrite, переписать вызовы из старого домена в новый.Вы не сможете сделать это, если домены находятся на разных серверах.

  3. Вы можете отредактировать страницу по адресу http://www.xyz.com/yourdetails.html и добавить заголовок перенаправления (и, возможно, объяснение) для перенаправления на новую страницу.

1 голос
/ 03 августа 2010

По модулю Apache mod_rewrite. Вы можете создать что-то вроде (на старом домене):

RewriteRule ^ yourdetails.html $ http://www.xyz.com/yourdetails.html [R = 301, L]

1 голос
/ 03 августа 2010

До тех пор, пока вы не сможете отправлять новые письма с соответствующим доменом, вы захотите использовать перенаправление 301 на домене xyz.com.Вы можете использовать файл .htaccess, чтобы сделать это.Google для информации, относящейся к вашему веб-серверу. Этот сайт , кажется, содержит хорошую информацию, специфичную для Apache.

0 голосов
/ 03 августа 2010

Или используя php-скрипт на старом месте:

<?php
    header( 'Location: http://new_page.html' ) ;
?>
0 голосов
/ 03 августа 2010

в PHP: <? php заголовок ("Местоположение: <a href="http://www.abc.com/yourdetails.html" rel="nofollow noreferrer">http://www.abc.com/yourdetails.html"); ?>

0 голосов
/ 03 августа 2010

Если вы на сервере Apache, это звучит как работа для mod_rewrite.

попробуй http://corz.org/serv/tricks/htaccess2.php http://httpd.apache.org/docs/2.0/rewrite/rewrite_guide.html

0 голосов
/ 03 августа 2010

URL-адрес по определению указывает на один веб-ресурс, и вы можете настроить свой веб-сервер для сопоставления нескольких URL-адресов одному и тому же веб-ресурсу.

Пожалуйста, обратитесь к this для получения дополнительной информации о том, как сделать это на Apache.

0 голосов
/ 03 августа 2010

Добавьте этот метатег в начало вашей страницы в домене abc.

<META HTTP-EQUIV="refresh" CONTENT="0;URL=http://www.xyz.com/yourdetails.html">

Надеюсь, это поможет.

0 голосов
/ 03 августа 2010
<script>
window.location='http://newurl.com/page.html'
</script>

или даже лучше (всего один фрагмент для всех страниц)

<script>
window.location='http://newurl.com'+window.location.pathname
</script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...