Автор статьи: Жарков Станислав
Когда вы ставите ссылку на своей странице, не задумываетесь ли вы о том, как нужно записывать URL сайта: http://www.site.ru или http://www.site.ru/ (с символом «/» в конце адреса).
Вопрос этот далеко не праздный. Предположим, что вы поставили ссылку на старый добрый Rambler, опустив в конце URL слэш: http://counter.rambler.ru/top100. Давайте посмотрим, что происходит, когда пользователь щелкает мышью по этой ссылке.
Естественно, ничего экстраординарного не случается. На сервер от броузера пользователя приходит запрос на получение документа http://counter.rambler.ru/top100, а сервер отправляет в броузер следующий ответ:
HTTP/1.1 301 Moved
Permanently
Date: Mon, 22 Mar 1999 09:15:18 GMT
Server:
Apache/1.2.6 rus/PL22.2
Location:
http://counter.rambler.ru/top100/
Connection:
close
Content-Type: text/html; charset=windows-1251
Vary:
accept-charset
<HTML><HEAD>
<TITLE>301 Moved
Permanently</TITLE>
</HEAD><BODY>
<H1>Moved
Permanently</H1>
The document has moved
<A
HREF=»http://counter.rambler.ru/top100/»>here</A>.
</BODY></HTML>
Вся эта абракадабра означает, что документ был перемещен по другому адресу который отличается всего лишь наличием слэша «/» в конце URL: http://counter.rambler.ru/top100/. И броузер снова обращается к серверу уже по новому адресу.
Таким образом, ничтожный слэш является причиной возрастания нагрузки на сервер, замедления скорости открытия требуемой страницы и увеличения траффика пользователя. Поэтому при записи адреса сайта если это каталог на сервере (например, http://pro.net.ru/fiction/), ставить слэш в конце URL нужно обязательно.
А вот если при ссылке на корневой каталог сервера (например, http://www.rambler.ru/) вы опустите слэш в конце URL, броузер пользователя сам подставит его. Дело в том, по HTTP-протоколу он должен послать запрос:
GET <URL> HTTP/1.0
где <URL> не может отсутствовать. Поэтому запросы по ссылкам http://www.rambler.ru и http://www.rambler.ru/ шлются совершенно одинаковые. Но более «элегантно» в ссылках даже на корневой каталог все-таки ставить слэш.