http редирект на другой домен
Создано: 02-06-2009 15:47:40 изменено: 21-01-2010 10:35:23  Метки: http sysadmin
статьи:
http://www.webconfs.com/how-to-redirect-a-webpage.php

Иногда необходимо перенаправить http запросы с одного домена на другой, к примеру для домена http://old-domain.ru/ можно создать такой index.html:

<META http-equiv="refresh" content="0;URL=http://domain.ru/"> 

однако такой метод не эффективен для такой ссылки: http://old-domain.ru/dir1/dir2/doc.html
сервер old-domain.ru ответит документ не найден вместо редиректа, что-бы решить данную задачу можно воспользоваться перманентным редиректом (301 Redirect). Для начала проверим наличие модуля rewrite_module:

# rewrite_module загружен?
apache2ctl -M
# загружаем если нет
a2enmod rewrite
# перезагрузка апача
/etc/init.d/apache2 force-reload

Затем в конфиге апача на old-domain.ru делаем необходимые правки вида:

<VirtualHost *>
        ServerName old-domain.ru
        ServerAdmin webmaster@domain.ru
        Options +FollowSymLinks
        RewriteEngine On
        RewriteCond %{HTTP_HOST} ^old-domain\.ru$ [NC]
        RewriteRule ^(.*)$ http://domain.ru$1 [R=301,L]
        ErrorLog /var/log/apache2/error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog /var/log/apache2/access.log combined
        ServerSignature On

</VirtualHost>

После перезагрузки конфига любые ссылки вида http://old-domain.ru/dir1/dir2/doc.html будут перенаправлены на http://domain.ru/dir1/dir2/doc.html
1506 просмотров комментировать