П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
Поиск по сайту:
                                                 
Главная

О проекте

Web-мастеру
     HTML & JavaScript
     SSI
     Perl
     PHP
     XML & XSLT
     Unix Shell

MySQL

Безопасность

Хостинг

Другое








Самое читаемое:

Учебник PHP - "Для Чайника".
Просмотров 174954 раз(а).

Иллюстрированный самоучитель по созданию сайтов.
Просмотров 71872 раз(а).

Учебник HTML.
Просмотров 72028 раз(а).

Руководство по PHP5.
Просмотров 42634 раз(а).

Хостинг через призму DNS.
Просмотров 49101 раз(а).

Подборка текстов стандартных документов.
Просмотров 43051 раз(а).

Учебник PHP - Самоучитель
Просмотров 49395 раз(а).

Документация на MySQL (учебник & справочное руководство)
Просмотров 49630 раз(а).

Внешние атаки...
Просмотров 40185 раз(а).

Учебник PHP.
Просмотров 35207 раз(а).

SSI в примерах.
Просмотров 26512 раз(а).



 
 
| Добавить в избранное | Сделать стартовой | Помощь




Руководство по URL преобразованиям
Работа с URL

Проблема отсутствующего завершающего слэша

Описание:

Каждый вебмастер может спеть песню о проблеме отсутствующих завершающих слэшей при использовании URL ссылающихся на каталоги. Если они отсутствуют, сервер выдает ошибку, потому что если вы пишете /~quux/foo вместо /~quux/foo/ сервер ищет файл foo. И поскольку этот файл является каталогом, происходит ошибка. В действительности, в большинстве случаев это исправляется само, однако, в некоторых случаях, нужно самим эмулировать этот механизм. Например, после того, как вы сделали массу сложных редиректов URL на CGI скрипты и т.д.

Решение:

Решение этой тонкой проблемы — это позволить серверу добавлять завершающий слэш автоматически. Чтобы сделать это правильно, мы должны использовать внешний редирект, для того чтобы браузер правильно запрашивал картинки и пр. В случае если бы мы сделали только внутренний редирект, это бы работало только для самой страницы каталога (страницы по-умолчанию), однако были бы проблемы при наличии любых картинок на этой странице с относительными URL, потому что браузер сделал бы запрос на вставку in-lined объекта. Например, запрос для image.gif на странице /~quux/foo/index.html без внешнего редиректа выглядел бы как /~quux/image.gif!

Поэтому, для того чтобы сделать это трюк, мы пишем:

RewriteEngine  on
RewriteBase    /~quux/
RewriteRule    ^foo$  foo/  [R]

Сумашедший и ленивый может даже сделать следущее в файле .htaccess находящемся в корне веб-пространства своего сайта. Однако, следует отметить, что это создает некоторые накладные расходы.

RewriteEngine  on
RewriteBase    /~quux/
RewriteCond    %{REQUEST_FILENAME}  -d
RewriteRule    ^(.+[^/])$           $1/  [R]



[ Назад ] [ Содержание ] [ Вперед ]



Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:
 





Copyright © 2005-2016 Project.Net.Ru