Как убрать slash в конце url?

N
На сайте с 20.03.2009
Offline
67
2163

Добрый день,

Как сделать чтобы в адресной строке браузера url был вида:

www.site.ru/news а не

www.site.ru/news/

Это в каком-то файле на хосте прописывается, или как?

Спасибо,

bulanov
На сайте с 29.08.2008
Offline
69
#1

Погуглил...

Самое любопытное происходит, когда URL заканчивается именем каталога без явного слэша на конце, вроде
http://www.site.ru/img/f/filina_l_h/priroda-7
Апач "поправляет" пользователя: он отвечает на запрос редиректом (статус 301 Moved permanently) на тот же URL, но со слэшем на конце. Мол-дескать, «гарячо любимый лузер, каталох-то такой есть, но ты ж не путай божий дар с иишницей, а файл с каталогом, и ступай-ка сюды...» Броузер у пользователя послушно идет, куда его послали. В результате, он, пользователь, все равно получает ту же страницу, что получил бы, если бы сразу явно указал слэш в конце, но на это уходит не 1 запрос-ответ, а 2 (и, в большинстве практических случаев, не 1 TCP-сеанс, а 2). Проще говоря, все происходит почти в 2 раза медленнее.

Резюме. Не ставить слэш в конце URL -- одна из наиболее распространенных ошибок пользователей, в том числе и считающих себя "программистами" и "админами".
Иногда на Microsoft IIS серверах URL со слешем и без него на конце статуса 200 OK не увидишь. Наиболее часто на них встречается такая связка: сперва 302 редирект, а затем 200 OK. Это означает, что сервер автоматически применяет 302 редирект URL’а без слеша на URL со слешем.

Вы все еще хотите убрать слэш?

Подпись

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий