Страница ошибки 404 по умолчанию вместо пользовательских?

Почему эта страница возвращает страницу 404 по умолчанию: http://example.com/this%2Fthis
но этот возвращает пользовательский: http://example.com/this/this
и этот возвращает также пользовательский: http://example.com/?i=this%2Fthis

Вот мой файл htaccess:

ErrorDocument 404 http://example.com/?id=error

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

Вопрос в том, что я должен добавить в свой htaccess-файл, чтобы URL-адрес работал правильно и перенаправлял на страницу ошибки?

3

Решение

Такое поведение обусловлено соображениями безопасности.

URL содержащие %2f ИЛИ ЖЕ %5c символы просто возвращают значение по умолчанию 404 от Apache по соображениям безопасности.

Связанные документы Apache

См. Также: 5 решений проблемы с закодированными URL-адресами (% 2F) в Apache

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]