LINUX.ORG.RU

Кириллический URL и Wordpress в 2017 году

 , , ,


0

2

Вчера на одном небольшом сайтике, который я сделал и обслуживаю,

обнаружил такой неприятный момент: когда переходишь на длинный кириллический url из поисковика или просто из новой вкладки браузера отдаёт 404-ю.

Переходишь на тот же урл с сайта — все ОК.

Пришлось ставить плагин и делать все урлы транслитом.

Как оно вообще WP дружит с урлами кириллицей?

База целая, в логах ничего нет.

Самое интересное, что сначала где-то 2 месяца все работало и индексировалось поисковиками, а потом вот такой «Ой!».

Это что вообще такое?!

P.S. Уточню, что домен латиницей, кириллический именно URI.

★★★★★

Наверное стоит попробовать разобраться чем переход на URL «поисковика или просто из новой вкладки браузера» отличается от перехода с сайта. Браузерные инструменты разработчика и грязнохаки вроде var_dump($_SERVER) тебе в помощь

P.S. «длинный» это сколько в граммах?

MrClon ★★★★★ ()
Ответ на: комментарий от MrClon

Это примерно вот такой _http://site.in.ua/плодовые-деревья/персики/средние_ .

Странно, что 2 месяца все нормально работало, сейчас работали нормально только плодовые-деревья/черешни/саммит

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

Twissel ★★★★★ ()
Последнее исправление: Twissel (всего исправлений: 2)
Ответ на: комментарий от Twissel

Воспроизвести 404 можешь? Разбирайся чем такие запросы отличаются от успешных. Может там из-за реферла хэдеры запроса получаются слишком длинными и не пролезают в какой-нибудь лимит например (хотя тогда 5xx должно быть)

MrClon ★★★★★ ()
Ответ на: комментарий от MrClon

Может там из-за реферла хэдеры запроса получаются слишком длинными и не пролезают в какой-нибудь лимит

Звучит разумно. Ну разверну его на тестовом домене проверю, что это за хрень неведомая.

Twissel ★★★★★ ()

А обновления на WP не прилетали случаем? Я сталкивался с таким лет 5 назад. Оказалось что с обновлениями что-то изменилось в кодировке при формировании URI. Вообще, это тебе на будущее. Не используй кириллические URI, нигде и никогда (и дело не только в WP). Сам по себе WP по тупому формирует адрес страницы при ее создании и не учитывает в кириллицу, не смотря на то что он предлагает автоматически создать запись с адресом из заголовка. А вообще подробней нужно разбираться. Причин может быть много. Посмотри через Google Webmaster, как показываются текущие страницы и как будет если добавить новую с тем же адресом.

ilinsky ★★★★ ()
Последнее исправление: ilinsky (всего исправлений: 1)
Ответ на: комментарий от ilinsky

Вообще, это тебе на будущее. Не используй кириллические URI, нигде и никогда

Вот я-бы не был так категоричен. Хотя сам пока пользуюсь translitom, вот дождусь когда вот такое вот %D1%84%D1%83%D1%83%D1%83 перестанет в интерфейсе появляться и перейду на кириллицу (может быть)

MrClon ★★★★★ ()

P.S. Уточню, что домен латиницей, кириллический именно URI.

Кириллица ни там, ни там не нужна.

домен латиницей

А других на самом деле и нет :)

WereFox ★☆ ()
Ответ на: комментарий от MrClon

перейду на кириллицу (может быть)

А можно поинтересоваться, зачем? Не холивара ради. Просто скажи свои доводы. А я, после, постараюсь объяснить почему этого делать не нужно. А ТСу будет полезно знать, ну может и мне, если я чего-то не знаю в этом направлении.

ilinsky ★★★★ ()
Ответ на: комментарий от ilinsky

Сугубо из юзабилистических соображений, potomichto-translit-saset

Посмотри на Википедию. URLы выглядят шикарно, портит их только переодически пробивающееся в интерфейс %D1%84%D1%83%D1%83%D1%83

MrClon ★★★★★ ()
Ответ на: комментарий от pawnhearts

Браузер ТСа может добавлять в хэдеры любую дичь на своё усмотрение. Впрочем я и не говорю что этот вариант наиболее вероятный. Это просто пример показывающий что можно увидеть если посмотреть на него внимательнее

MrClon ★★★★★ ()
Ответ на: комментарий от MrClon

В любом случае url может быть очень длинным. Гораздо длинее, чем то что у него там получилось. И вряд ли браузер/сервер его просто так возьмет и отрежет, что получится 404.

pawnhearts ★★★★ ()
Ответ на: комментарий от pawnhearts

Смысл в том, что на неделе сделаю тестовый домен и посмотрю, отпишусь сюда.

Просто логики не пойму, пока вангую, что где-то или проблема в кодировки, или таки режется длина.

Пускай тред висит.

Twissel ★★★★★ ()
Ответ на: комментарий от pawnhearts

По просьбам трудящихся

Вот перейди по этой ссылке (укоротил, чтоб парсер ЛОРа не резал)

http://bit.ly/2yVCHBC получишь 404-ю.

Потом перейди из подменю «Наша продукция», там все работает.

На первый взгляд, кажется, что браузеры не могут в нормальный url encoding, но думаю на самом деле все по-другому.

Короче, я устал сегодня копаться не буду :-)

Twissel ★★★★★ ()
Последнее исправление: Twissel (всего исправлений: 1)

Вангую кодировкопроблемы при формировании URL.

На сайтах с названиям статей в адресах я обычно видел ID это записи. Как-то так примерно domain.tld/article/id-гроб-гроб-кладбище/

Для движка важен этот id, остальное может быть любым. На том же блогспоте так.

Radjah ★★★★★ ()
Ответ на: комментарий от pawnhearts

Даже специальный плагин под это дело придумали — https://ru.wordpress.org/plugins/wp-force-lowercase-urls/

Поскольку nginx у меня собран самостоятельно, с naxsi модулем, то буду юзать его, чтобы не сломать зависимости установкой дистрибутивного nginx-extras.

Twissel ★★★★★ ()
Ответ на: комментарий от WereFox

Думаю, тебе должно быть очевидно, что юзеры это не осилят :) Да и альтернативой вротпрессу я бы это не назвал.

Зачем ему альтернативы? Зачем юзерам делать сайты? Это не их задача и обычно заканчивается всё тем, что кого-то зовут, потому что не работает. И зачем вообще делать сайты на wp или чём-то подобном? Он даже для посадки не годится, а на нём еще магазины городят. И потом всё равно переезжают на что-то типа opencart.
И я даже не веду речь о том, что wp - вечнодырявое дерьмище с такой же экосистемой вида купите-мой-плагин-из-говна-free-trial.

crutch_master ★★★★★ ()
Последнее исправление: crutch_master (всего исправлений: 3)
Ответ на: комментарий от crutch_master

И я даже не веду речь о том, что wp - вечнодырявое дерьмище с такой же экосистемой вида купите-мой-плагин-из-говна-free-trial.

Ну, так речь и не об этом. Ну и если подходить к делу с умом (как делают некоторые) — то дыры можно закрыть.

Зачем юзерам делать сайты?

Думаю, для начала это тебе им надо объяснить. Например, какому-нибудь 80-летнему деду, который про интернет позавчера узнал. А есть ещё Вася, который делает бложик just for fun и на болту он вертел платить за это кому-то бабло. А вот поциенты, которые делают магазин, что-то накосячат, а потом ТРЕБУЮТ от САППОРТА ХОСТЕРА им всё починить — вот это лютый звездец.

на нём еще магазины городят

Психическое здоровье таких товарищей — тема отдельного исследования.

И зачем вообще делать сайты на wp или чём-то подобном?

За шкафом. Типичному юзеру WP обмазаться фреймворком будет СЛООООЖНАААА.

WereFox ★☆ ()
Ответ на: комментарий от pawnhearts

Берут в основном то, что популярно. В вебе популярность любой из CMS на пыхе сильно выше популярности всего питона. Хостинги обычно тоже затачиваются в первую очередь на него. А VPS осилить может сильно не каждый.

WereFox ★☆ ()