Как исправить ошибку «Not Acceptable 406» с арабским языком в URL? - PullRequest
0 голосов
/ 04 января 2011

Как исправить ошибку "Not Acceptable 406" с арабским языком в URL?

Недопустимо

Соответствующее представление запрашиваемый ресурс / не может быть найдено на этом сервере.

Кроме того, ошибка 404 Not Found был обнаружен при попытке использовать ErrorDocument для обработки запроса

Ошибка не появляется, когда я вставляю английские слова в URL: http://www.faressoft.org/?anything=hello

но это появляется, когда я вставляю арабские слова в URL: http://www.faressoft.org/?anything=%E3%D1%CD%C8%C7%F0

У меня есть эта проблема на всех страницах.

Ответы [ 2 ]

2 голосов
/ 04 января 2011

Apache, вероятно, настроен на набор символов UTF-8.Но конец вашего URL декодируется в последовательность байтов E3D1CDC8C7F0, которая не является допустимой последовательностью байтов UTF-8.Вероятно, поэтому Apache вызывает ошибку.

В каком наборе символов E3D1CDC8C7F0 является допустимой последовательностью байтов?Какую информацию содержит заголовок HTTP о наборе символов (вы можете использовать плагин HTTP Live Header для Firefox, чтобы узнать)?

Обновление:

Очевидно, мой ответ получил отрицательное (без каких-либо комментариев).Однако принятый ответ и мой ответ связаны между собой.В моем ответе содержатся технические подробности, а в принятом ответе объясняется, какой модуль отвечает за проверку.

Я все еще не понимаю, каким образом URL в вашем вопросе был создан с самого начала.Я не думаю, что это действительный URL.

Я скопировал арабский текст с вашего веб-сайта, URL закодировал его и создал следующий URL, который работает:

http://www.faressoft.org/?anything=%D9%87%D9%86%D8%A7%D9%83

Когда отображается страница, в Firefox даже URL-адрес отображается с арабскими символами.

Вы уверены, что отключение mod_security решит вашу проблему?Что, если ваш URL неверен?

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

1 голос
/ 04 января 2011

Хм, это может быть много вещей. Прежде всего, у вас есть mod_security? Это модуль Apache, который, предположительно, делает ваш сайт более безопасным, однако без реального понимания этого просто нарушает ваш сайт. Просто выключи его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...