Настройка .htaccess

php сервер регулярные выражения .htaccess изменение url

Пример той ссылки которую я хотел бы изменить:
http://mys.ru/Хатунь/history.php
Какая должна получиться:
http://mys.ru/История_Хатуни/

RewriteRule ^История_Хатуни/$ /Хатунь/history.php [L]
не работает.

RewriteRule ^(.*)История_Хатуни/(.*)$ $1
Не работает.

Подскажите как будет работать? Или нельзя делать папки русскоязычные?
Ответы:
не стоит, лучше использовать латиницу.
Если вы хотите такие ссылки, в вашем случае лучше:
1. делать редирект на один файл index.php, редирект этот настроить в .htaccess примерно так
RewriteRule ^(.*)$ index.php/?search=$1 [QSA,L]
2. В index.php иметь массив со списком адресов и соответствующих им файлов:
$map = array(
'История Хатуни' => './Хатунь/history.php',
'Альтернативная история Хатуни' => './Хатунь/history2.php',
... итд...
)
3. получать $doc = $_GET['search'], проверять по нашему индексу
isset($map[$doc])
4. если есть такое, include $map[$doc]


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.