Помогите с .htaccess и кириллицей

12
A9
На сайте с 04.01.2012
Offline
317
#11
Как сделать, чтоб работало в IE

В IE половина всего не работает на самом деле, c какой то стороны на это легче забить. Или поставить заглушку - типа Вы используете IE, смените браузер иначе могут быть проблемы.

https://hstq.net - аренда серверов от 9.99$! Нет KYC! Много стран размещения на выбор! Акция - удвоим оплаченный период! Заказывайте!
sivrem
На сайте с 24.02.2017
Offline
1
#12
sivrem:
В .htaccess прописал правило для обработки гет-параметров для кирилицы, во всех браузерах работает, а в IE никак не хочет!

Вот пример из .htaccess
#Верхний регистр+цифры и знаки
RewriteCond %{REQUEST_URI} !^/administrator.*
RewriteCond %{QUERY_STRING} ^%D0%([9A].)|(81)([0-9-]+)=%D0%([9A].)|(81)([0-9-]+)
RewriteRule ^.*$ Страница 404? [R=301,L]

#Нижний регистр + цифры и знаки
RewriteCond %{REQUEST_URI} !^/administrator.*
RewriteCond %{QUERY_STRING} ^%D[01]%([B8].)|(91)([0-9-]+)=%D[01]%([B8].)|(91)([0-9-]+)
RewriteRule ^.*$ Страница 404? [R=301,L]

То есть, если к примеру набрать адрес https://www.igorian-cg.com/prajs/?Запрос=запрос
то меня выкинет на 404.

Как сделать, чтоб работало в IE

Решил проблему так:

#Ошибки

ErrorDocument 404 /404/

#Убираем параметры из УРЛ

#%D0%90 - %D0%AF это закодированные символы А - Я, %D0%81 - Ё

#я - %D1%8F а - %D0%B0 ё - % D1% 91

#Верхний регистр+цифры и знаки

RewriteCond %{REQUEST_URI} !^/administrator.*

RewriteCond %{QUERY_STRING} ^%D0%([9A].)|(81)([0-9-]+)=%D0%([9A].)|(81)([0-9-]+)

RewriteRule ^.*$ - [R=404,L,NC]

#Нижний регистр + цифры и знаки

RewriteCond %{REQUEST_URI} !^/administrator.*

RewriteCond %{QUERY_STRING} ^%D[01]%([B8].)|(91)([0-9-]+)=%D[01]%([B8].)|(91)([0-9-]+)

RewriteRule ^.*$ - [R=404,L,NC]

#Латиница

RewriteCond %{REQUEST_URI} !^/administrator.*

RewriteCond %{QUERY_STRING} ^([A-Za-z0-9-]+)=([A-Za-z0-9-]+)

RewriteRule ^.*$ - [R=404,L,NC]

#Латиница

RewriteCond %{REQUEST_URI} !^/administrator.*

RewriteCond %{QUERY_STRING} ^([A-Za-z0-9-]+)

RewriteRule ^.*$ - [R=404,L,NC]

Ответ сервера HTTP/1.1 404 Not Found

А для пользователя страница ошибки.

12

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