Страница 1 из 1

Ошибка в кириллических УРЛ где есть буква х

Добавлено: 19 апр 2017, 13:23
vkponomarev
Здравствуйте, начал работать с openserverom пару недель назад, обнаружилась ошибка в УРЛах.

Я создаю сайт на prestashop и столкнулся с проблемой.
У меня кириллические URL/URI/УРЛ например:

http://shop.ru/товар-кухня.html

УРЛ в которых встречается кириллическая буква Х выдает 404 ошибку. Я перерыл весь интернет и форумы престашопа ничего подобного не нашел.

Потом менял разные апачи и разные пхп ставил и мускул разный ставил в настройках не помогло.

Вернулся обратно на Denwer все заработало....

Прошу вас обратить внимание на данную ошибку.

Re: Ошибка в кириллических УРЛ где есть буква х

Добавлено: 20 апр 2017, 00:50
Максим
Разбирайтесь со своим скриптом, а точнее с его обработчиком URL правил реврайта. Если создать обычный документ с таким именем (реальный файл), то никаких ошибок не возникает.

Re: Ошибка в кириллических УРЛ где есть буква х

Добавлено: 20 апр 2017, 08:00
vkponomarev
Я бы с удовольствием разобрался если бы мог. Еще раз повторю, такая проблема возникает только с openserver. К сожалению я с ним хочу работать, но не буду спасибо.

Re: Ошибка в кириллических УРЛ где есть буква х

Добавлено: 03 май 2017, 06:57
plaster
Максим писал(а):Разбирайтесь со своим скриптом, а точнее с его обработчиком URL правил реврайта. Если создать обычный документ с таким именем (реальный файл), то никаких ошибок не возникает.
Максим, проблема не правилах, с подобной проблемой я столкнулся тоже и писал о ней. У меня в общем то и правил сложных как таковых и нет в .htacces, просто все перенаправляется на индексный файл, кроме обращения к определенной директории. На удаленном сервере нет проблем, все работает, а вот в Open Server ошибка 404.

Re: Ошибка в кириллических УРЛ где есть буква х

Добавлено: 03 май 2017, 17:31
Максим
plaster, да нет, проблема как раз в правилах. Google говорит, что из-за разных кодировок браузера, сервера и дисковой подсистемы в Windows возникают подобные проблемы, в то время как на Linux всё нормально. Поэтому чтобы всё работало и в Linux и в Windows вместо такого правила реврайта
RewriteRule ^(.*)$ index.php
нужно использовать такое
RewriteRule . index.php
вот собственно и всё.

Re: Ошибка в кириллических УРЛ где есть буква х

Добавлено: 05 май 2017, 05:09
plaster
Да, есть различия в системах, это известно, но вот об этом я не подумал. Но в том то и странности, что проект разрабатывался в предыдущей версии Open Server и такой проблемы в нем не наблюдалось. И пропустить такого не мог, так как ранее у заказчика был ужаснейший бардак в идентификации, да и с параметрами запросов тоже, и все это они приводили в порядок вручную. А чтобы проверить не допущено ли было ими ошибок, все без исключения правки проверялись запросами, а в новых запросах ради SEO и добавлены "русские хвосты".
Теперь же я думаю - либо у меня крыша едет и надо откатиться до предыдущей версии, и убедится, что и там был непорядок, либо и бог с ним, чем я сейчас и руководствуюсь. :)

Re: Ошибка в кириллических УРЛ где есть буква х

Добавлено: 05 май 2017, 09:01
Максим
plaster, ну так а причём тут Open Server. Запросы обрабатывает Apache, а не Open Server. Может в Apache что-то поменялось в новых версиях. Как решить проблему я вам написал выше.

Re: Ошибка в кириллических УРЛ где есть буква х

Добавлено: 05 май 2017, 12:14
plaster
Ну так Apache же не сам по себе, а входит в сборку Open Server.

Нет, выгоднее ничего не менять, знаем о таком поведении и достаточно, это менее страшнее, чем запутаться и залить на сервер не то. :)