Подтвердить что ты не робот

Структура URL: нижний регистр VS Верхний регистр

Просто позвольте мне вспомнить, когда я проходил через некоторые веб-сайты, если бы они имели комбинацию с верхним регистром и нижним регистром в URL-адресе вроде http://www.domain.com/Home/Article

Теперь, как я знаю, мы всегда должны использовать строчные буквы в URL-адресе, но не имеем представления о технической причине. Я хотел бы узнать у вас эксперта, чтобы очистить эту концепцию, почему использовать строчные буквы в url. Каковы преимущества и недостатки URL верхнего регистра.

4b9b3361

Ответ 1

Доменная часть не чувствительна к регистру. GoOgLe.CoM работает. Вы можете добавить прописные буквы, как вам нравится, но обычно нет причин для этого и, как указано в комментариях ниже, может повредить ваш рейтинг SEO.

Часть пути чувствительна к регистру или не чувствительна к регистру, в зависимости от среды сервера и сервера. Обычно машины Windows нечувствительны к регистру, а машины Linux чувствительны к регистру. Это означает, что вы должны придерживаться строчной буквы или вы рискуете ввести ошибку, которую очень трудно выследить (несоответствующий случай, который не имеет значения на dev-сервере).

Часть строки запроса доступна для сервера как есть. Вы можете легко использовать смешанный футляр по своему усмотрению или отменить случай (toLowerCase(...)). Это также означает, что использование ключей с кодировкой base64 будет работать. Вы не можете ожидать, что пользователи будут вводить это правильно.

Хэш-часть (называемая идентификатором фрагмента) доступна только для кода клиента, а не для сервера. Javascript может различать случаи, которые ему нравятся, а также браузер. url#a будет прокручиваться до элемента с идентификатором a, но url#a не будет.

Ответ 2

Мне придется не согласиться со всей сложившейся мудростью, поэтому я, вероятно, остановлюсь, но:

Если вы перенаправляете все URL-адреса смешанного случая на ваш правильно обведенный URL-адрес, он решает все упомянутые проблемы. Поэтому кажется, что этот аргумент исходит из традиции и предпочтения. Точка URL-адреса должна иметь удобное для пользователя представление страницы, и если ваш URL-адрес более удобен в верхнем регистре, почему бы не использовать его? Сравнить:

moviesforyoutowatch.com/batman-vii-the-dark-knight-whatevers MoviesForYouToWatch.com/Batman-VII-The-Dark-Knight-Whatevers

Я считаю, что версия смешанного варианта превосходит эту цель. Если есть техническая причина, которая не может быть решена при сравнении и перенаправлении в нижнем регистре, пожалуйста, поделитесь ею.

Ответ 3

Я знаю, что вы задали технические причины, но это также стоит рассматривать с точки зрения UX.

Скажем, у вас есть URL-адрес с символами верхнего регистра, и для аргументов это было распространено на печатных носителях. Когда пользователь приходит, чтобы ввести этот URL-адрес в свой браузер, он может быть вынужден соответствовать этому случаю (или быть вынужденным соответствовать указанному случаю, если ваш веб-сервер чувствителен к регистру), в конечном итоге вы даете им больше работы, рассмотрите также случай. В конце концов, они не знают, является ли ваш сервер чувствительным к регистру или нет, и они, возможно, в прошлом испытывали 404 с веб-серверов, чувствительных к регистру.

Если ваш сервер чувствителен к регистру, и вы используете URL-адрес смешанного случая, вы предоставляете больше возможностей для пользователя, чтобы ввести URL-адрес. Кроме того, скажем, у вас есть URL www.example.com/Contact. Легко путать верхний и нижний регистр "c" (особенно если он скопирован в письменной форме), если пользователь упускает из виду это и использует неправильный случай, когда он никогда не сможет достичь вашего контента.

Учитывая это, рассмотрите www.example.com/News/Articles/FreeIceCreamForAll. На клавиатуре, которая не слишком сложна, но рассмотрите это на мобильном устройстве, было бы очень сложно ввести.

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

В заключение; сохранить URL-адрес в нижнем регистре.

Ответ 4

В ОТНОШЕНИИ АСПЕКТОВ БЕЗОПАСНОСТИ ЭТОГО ВОПРОСА:

На самом деле существует хорошая причина для использования сочетания прописных и строчных букв.

Это приводит к запутыванию и блокировке злоумышленников!

В человеческом разговоре люди легко смешиваются с использованием верхнего и нижнего регистра.

Люди не могут "говорить" слово "идентификаторы или пароли или URL" с ясностью, если они содержат прописные и строчные буквы.

Это помогает с защитой данных или паролей на сайтах сайта, которые предоставляются как часть заблокированной или защищенной части части "автоматического доступа" к сайтам или их данным.

Это похоже на НЕ ИСПОЛЬЗОВАНИЕ JSON.

JSON - это "текст, читаемый человеком", и поэтому JSON просто дает всем нападающим (включая правительства, Google, которые украдут ваши идеи и данные)... почти все, что им нужно знать о данных... это гораздо более безопасным, чтобы запутать их, используя частные очень быстрые "бинарные протоколы", которые используют ваши собственные "непознаваемые структуры данных"... но просто следите, потому что на самом деле можно путать себя или свою собственную команду разработчиков.

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

Таким образом, существует дополнительный уровень защиты сайтов и данных от человеческих злоумышленников (и некоторых роботов), которые могут быть использованы простым использованием совершенно нетрадиционных систем (то есть, почему кто-то хочет использовать "стандартный протокол безопасности", когда некоторые простые тяжеловесные вычисления, все они могут быть легко сломаны).

Просто "соль и хэш" все - плюс также добавьте дополнительную дополнительную индивидуальную безопасность - это просто здравый смысл!

Вывод: все приведенные выше ответы очень ясны и правильны, но вы также можете с радостью использовать эти самые знания, чтобы запутать потенциальных злоумышленников.