Регистр ЧПУ

Всем привет. Вопрос, как сделать, чтобы ЧПУ были в нижнем регистре?

Пример:

site.ru/qwerty и site.ru/Qwerty откроется одна и та же страница, но почему не переводит в нижний регистр или как это сделать?

6 ответов

  • 0

    оптимальный вариант: 301 редирект со страниц, содержащих хотя бы 1 символ в верхнем регистре, на страницы в нижнем регистре. По реализации не подскажу, не сталкивался с такой проблемой.

    • +1
      realteam realteam 29 июля 2020 17:39 #

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

    • +2

      Ну тут куча вариантов.
      В index.php забабахать свой php-код с проверкой наличия верхнего регистра в "пути" и при его наличии, трансформация  в lowercase и 301 редирект.
      Или погулите рецепты htaccess-реврайтов, если у вас apache используется
      Например первое в выдаче:

      RewriteEngine On
      RewriteMap  lc int:tolower
      RewriteCond %{REQUEST_URI} [A-Z]
      RewriteRule (.*) ${lc:$1} [R=301,L]

      Ну а если у вас nginx+php-fpm, то гуглите сами дальше.  
      Я не проверял, не знаю, работают они или нет



      И что то меня в историю потянуло, когда интернет был маленький, а скорость 9600бод -))

      По стандарту:

      Capitalization
      
      When typing an Internet address, capitalization may be necessary. An Internet address is only case sensitive for everything after the domain name. For example, it does not matter if you use uppercase or lowercase with "computerhope.com," it still reaches the same page.
      
      However, when typing the name of the page, file, or directory in the URL, it is case sensitive.
      
      Example
      https://www.computerhope.com/jargon.htm
      
      The address above is different than the address below.
      https://www.computerhope.com/JARGON.HTM

      И сделано это было в основном из-за unix-систем, у которых путь к файлам case sensitive. А на заре времён, как мы помним, странички были статичными html-файликами. То есть URL страницы имел прямую зависимость от месторасположения файлика на диске.
      Да, сейчас, во времена фрэймворков - это атавизм, но он есть. Потому что статичные html-странички, как ни странно никто не отменял и они до сих пор работают -)

    • +1
      realteam realteam 29 июля 2020 18:43 #

      Из всего понял, что надо сделать правила в htaccess и глубоко не вникать.  Были времена во все вникал и мало что это дало в целом. Просто знать хотелось, влияет ли это как то на продвижение или выдачу в поиске.

  • 1
    Wdis 17 ноября 2021 00:32 #

    А что делать с кирилицей, если URL кирилические буквы есть

Добавить ответ

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