Бурное развитие Internet приводит к тому, что ресурсы WWW часто изменяют своё местоположение. Нередко бывает, что сервер предприятия не может справиться с возрастающей нагрузкой и руководство организации принимает решение установить в каждом из подразделений отдельный Web-сервер. В результате материалы, связанные с деятельностью подразделения, размещаются по новому адресу.
А как быть с гипертекстовыми ссылками? Ведь авторы Web-страниц не только не могут корректировать, материалы, размещенные на других Web-узлах, но даже не знают, какие HTML-документы содержат ссылки на их Web-страницы. Если администратор Web-узла не предпринимает мер для того, чтобы переадресовать обращение пользователя по новому адресу, появляются так называемые разрушенные связи — гипертекстовые ссылки, указывающие на несуществующие документы. При попытке обращения по такой ссылке первая строка ответа сервера клиенту обычно имеет вид
Интересный способ разрешения проблемы разрушенных связей предложили и реализовали авторы системы Alexa (http://www.alexa.com/). Помимо своего основного назначение (выполнение функций Internet-фильтра), система Alexa кэширует Web.
| |
HTTP/1.0 404 File Not Found
Чтобы не допускать появления разрушенных связей, администратор узла должен оставить по прежнему адресу ссылку на новый адрес документа. Вспомните, как при работе в Web вы время от времени получали сообщение приблизительно следующего содержания: «Web-страница изменила свой адрес. Если вы все ещё собираетесь обратиться к данному документу, щёлкните на ссылке, расположенной ниже». Далее следовала ссылка, по которой можно было перейти к документу, расположенному по новому адресу.
Реализуем Web-страницу, выполняющую подобное перенаправление запроса пользователя, средствами JavaScript.
<HTML>
<HEAD> <TITLE> Переадресация </TITLE> </HEAD>
<BODY>
С недавнего времени расположение документа изменилось
и теперь он находится по адресу
http://www.net.newtech.edu/manuals/index.html
Чтобы обратиться по новому адресу, щёлкните на гипертекстовой ссылке.
<P>
<CENTER> <A HREF =”http://www.net.newtech.edu/manuals/index.html”>
http://www.net.newtech.edu/manuals/index.html </A> <CENTER>
<P>
<CENTER> Через десять секунд переход произойдет автоматически
<CENTER>
<P> <CENTER>
<form name=”timer”>
На раздумья осталось
<INPUT TYPE=”text” SIZE=2 NAME=”clock”>
секунд
</FORM>
</CENTER>
<SCRIPT LANGUAGE=”JavaScript”>
var seconds=[];
remain ();
function remain ()
{
seconds--;
document.timer.clock.value=seconds;
if (seconds > 0)
{window.setTimeout (‘remain ()’, 1000)}
else
{
location.replace (http://www.net.newtech.edu/manuals/index.html);
}
}
</SCRIPT>
</BODY>
</HTML>