Назад | Перейти на главную страницу

.htaccess с символами UTF-8

Я пытаюсь использовать mod_rewrite для создания чистых URL-адресов, содержащих символы UTF-8.

Мой файл .htaccess выглядит так:

RewriteEngine On
RewriteRule ^([a-zA-Z\-0-9]+)/?$ index.php?page=$1 [B]

Он работает с английскими символами, но когда я пытаюсь использовать символы utf-8, я получаю сообщение об ошибке «Не найдено».

Как мне изменить свой файл .htaccess, чтобы выполнить свою работу?

В URL-адресе на стороне сервера нет такой вещи, как символы utf-8.

Все символы URL закодированы в процентах. Итак, добавьте знак процента в свое правило перезаписи, и все будет в порядке.

RewriteRule ^([a-zA-Z\-0-9%]+)/?$ index.php?page=$1 [B]