<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=KOI8-R" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Igor Sysoev wrote:
<blockquote cite="mid20050922193750.P11371@is.park.rambler.ru"
 type="cite">On Thu, 22 Sep 2005, Alexander Gnevshev wrote:
  <br>
  <br>
  <blockquote type="cite">Чтобы:
    <br>
- была возможность избавиться от страниц-дублей;
    <br>
  </blockquote>
  <br>
Где - на сайте или в ссылках ?
  <br>
</blockquote>
Везде. В том числе в поисковиках.<br>
<blockquote cite="mid20050922193750.P11371@is.park.rambler.ru"
 type="cite"><br>
  <blockquote type="cite">- всегда твёрдо знать, что параметры URI в
location сравниваются напрямую с URI, пришедшим от пользователя (без
преобразований);
    <br>
  </blockquote>
  <br>
Ну, например, частный случай: /page.html и //page.html. Что
предлагается
  <br>
делать со вторым ?
  <br>
</blockquote>
Оставлять как есть и обрабатывать все location как есть, даже если это
вызовет 404.<br>
<blockquote cite="mid20050922193750.P11371@is.park.rambler.ru"
 type="cite"><br>
  <blockquote type="cite">- иметь полный контроль над URI, чтобы можно
было хотя бы в логе увидеть подобные запросы;
    <br>
  </blockquote>
  <br>
%request пишет в лог оригинальный URI.
  <br>
</blockquote>
Это значит, что при подсчёте статистики будет некоторая погрешность,
так как никто никогда не делает обработку a-la shell для директорий в
URI при обработке логов.<br>
<blockquote cite="mid20050922193750.P11371@is.park.rambler.ru"
 type="cite">
  <blockquote type="cite">- не навязывать администраторам nginx парсинг
URI без возможности его отключения.
    <br>
  </blockquote>
  <br>
А как же URI обратывать, если его не парсить ? Как его потом сравнивать
с location ?
  <br>
</blockquote>
Под парсингом в данном случае я имел в виду автоматические замены для
каталогов:<br>
<ul>
  <li>два и более слэша преобразуются в один слэш: "//" &#8212; "/";
  </li>
  <li>убираются ссылки на текущий каталог: "/./" &#8212; "/";
  </li>
  <li>убираются ссылки на предыдущий каталог: "/dir/../" &#8212; "/".</li>
</ul>
Вообще в наше время считать, что URI является прямым отображением на
директории на диске, -- прямая ошибка. Это уже давно не актуально. На
большинстве крупных ресурсов URI внутри обрабатывается (переписывается
rewrite и пр.) и с именем файла не совпадает.<br>
<br>
Также очень интересен вариант, когда в URI передаётся параметр для
редиректа на другой сайт (двойной слэш). Так тоже делают, но этот
вариант не будет работать с nignx.<br>
<br>
Именно поэтому очень хочется иметь возможность влиять на поведение
nginx в этом вопросе.<br>
</body>
</html>