Читайте также:
|
|
Редиректы можно делать множеством способов. На web-сервере Apache (обычно это компьютеры под управлением операционных систем UNIX или Linux) можно очень просто реализовать редирект – в стандартном файле под названием. htaccess при помощи директив Redirect и RedirectMatch (подробнее о формате этого файла читайте по адресу http://httpd.apache.org/docs/2.2/howto/htaccess.html). Можно использовать также и более сложные директивы (известные как".правила перезаписи") при помощи модуля сервера Apache под названием mod_rewrite (который мы скоро обсудим).
На web-серверах Microsoft IIS (http://www.iis.net/) для реализации редиректов имеются разные методы. Основной метод выполнения редиректов – при помощи консоли IIS (подробнее об этом можно прочитать по адресу http://www.mcanerin.com/EN/articles/301-redirect-HS.asp). Можно также использовать текстовый файл с директивами (при условии применения дополнительного модуля ISAPI, такого как ISAPI Rewrite (http://www.isapirewrite.com/). Этот язык скриптов предлагает такие возможности, которые аналогичны модулю mod rewrite сервера Apache.
Многие программисты используют для реализации редиректов и другие способы. Это можно сделать непосредственно в языках программирования (таких, как Perl, PHP, ASP и JavaScript). Если программист реализует редиректы таким путем, то он должен убедиться, что web-сервер возвращает код состояния 301. Вы можете проверить заголовок, который возвращается дополнительным модулем Live HTTP Headers (http://livehttpheaders.mozdev.org/) браузера Firefox.
Еще один способ реализации редиректа – это выполнить его на уровне страницы при помощи метатега refresh, который выглядит примерно так:
<meta http-equiv="refresh" content="5;url=http://www.yourdomain.com/newlocation.htm" />
Первый параметр в разделе контента (число 5) указывает количество секунд, которое web-сервер должен подождать перед перенаправлением пользователя на указанную страницу. Это применяется в тех сценариях, когда издатель хочет показать страницу, позволяющую пользователю понять, что он будет перенаправлен на другую страницу (а не на ту, которую запросил).
Проблема состоит в том, что большая часть таких метаобновлений обрабатывается как 302-й редирект. Единственное исключение из этого правила, если вы указываете задержку редиректа в 0 секунд. Вам придется отказаться от показа вашей предупредительной страницы, говорящей пользователю о том, что вы переносите его, но поисковые движки будут обрабатывать это как 301-й редирект (для надежности лучше все же по возможности просто использовать 301-й редирект).
Дата добавления: 2015-10-13; просмотров: 106 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Использование i-фреймов | | | Mod_rewrite и ISAPI_Rewrite для перезаписи и перенаправления URL |