Зачем считать их URL-адресами с разным заглавными буквами и косой чертой?


8

Это все строго разные URL:

http://www.example.com/page
http://www.example.com/pAge
http://www.example.com/page/
http://www.example.com/paGE/

Я понимаю, что это соответствует строгим правилам ISO, но почему? Сколько веб - сайтов там, что там на самом деле лечить pageи page/как различные URL, вы можете посетить? Или на самом деле использовать заглавные буквы, чтобы дифференцировать контент? Если бы они это сделали, я бы сказал им, что они, вероятно, делают это неправильно.

Почему мы должны тратить наше время в соответствии с этими правилами? Разве это не совсем тривиальна для Google , чтобы решить, что pageи page/те же страницы , и , вероятно , не следует рассматривать как дублированный контент?

Ответы:


10

Я понимаю, что это соответствует строгим правилам ISO, но почему?

За разными серверами в сети находятся разные операционные системы, и для некоторых из них каталог или файл с именем pageне совпадают с именем Page. Результатом является то, что это действительно два разных местоположения и даже не обязательно одного и того же типа (каталог / страница). Веб-сервер может быть настроен без учета регистра, но вы не можете этого допустить. Следовательно, правила должны исходить из того, что вещи заботятся о деле, а если нет, то все равно. Реально, вероятно, не стоит полагаться на различия в регистре, но ситуация существует и поэтому ее необходимо учитывать, иногда с такими вещами, как mod_speling .

Сколько существует веб-сайтов, которые на самом деле рассматривают страницу и страницу / как разные URL, которые вы можете посетить?

Они являются различными. Это почти всегда скрыто от вас:

  1. Когда вы заходите example.com/foo/на веб-сервер, он знает, что вы идете в каталог, и поэтому ищет там файл, соответствующий тому, что он настроен на распознавание в качестве индекса каталога. Таким образом, в конечном итоге вы в конечном итоге, example.com/index.htmlнапример.
  2. Если вы идете example.com/fooна сервер, на самом деле ищите файл в корневом каталоге с именем just foo. Если он не находит, то он проверяет, есть каталог с именем , /fooи вы можете перейти к # 1.

То, что вы, похоже, читаете как «нормальное» поведение в # 2, на самом деле является запасным вариантом для обработки вероятного случая.
Сколько из них используют имена без расширений, не имеет значения. Опять же: настоящая проблема; необходимо учитывать.

Если бы они это сделали, я бы сказал им, что они, вероятно, делают это неправильно.

Это мнение.
Вы можете подкрепить это различными практическими аргументами о нечувствительности к регистру и о том, как обрабатывать URL-адреса без расширений, с которыми я не обязательно не согласен, но на самом деле вы ошиблись бы, если бы сказали это.


Уродливый / раздражающий пример того, что я не связывался с делом: есть сайт, которым я управляю, но ИТ-специалисты клиента управляют самим сервером. Они настроили его так, чтобы перенаправлять все хиты example.com на www.example.com, но по какой-то причине перенаправление также вызывало все строчные буквы (мне не сказали этого). Редакторы сайта загружали, например. CamelCase.jpg. Какой-то другой код, который я не контролировал, связывался с этими изображениями без www, вызывая всевозможные глупые поломки, пока мы не нашли его.
Вс


8

Без обид, но Чувствительность к регистру жизненно важна для URL сегодня - они используются миллионы раз в день:

bit.ly

  1. http://bit.ly/ri2LhQ
  2. http://bit.ly/ri2LHq

Два совершенно разных сайта - возможно только из-за чувствительности к регистру


3
Угадай, как я это сделал? Я вытащил один URL-адрес из случайно измененного случая. У меня ушло 2 попытки придумать уникальный URL. Что касается вашего примера, где относительно очевидно, что каждая из них должна быть одной и той же страницей ... именно так поступает каноническое или серверное перенаправление 301. Вы должны нести ответственность за силу своей структуры URL, а не сам протокол HTTP.
Крис Клюис,

5

Это не политика Google, это основные правила.

С точки зрения пользователя Windows трудно понять имена файлов с учетом регистра. Однако в системах unix / linux pAge и page - это не одинаковые файлы и каталоги, а также веб-серверы.

Конечная косая черта - это проблема конфигурации (или выбор). Имейте в виду, что на большинстве веб-серверов сервер будет выполнять 30-кратное перенаправление на / page two / page /, что потребует повторного запроса к вашему серверу.

Вы можете сделать ваш веб-сервер нечувствительным к регистру и настроить его так, как вы хотите, чтобы соответствовать вашим собственным правилам.

Но опять же, это не связано с Google вообще

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.