Нужно сделать редирект в .htaccess без смены URL.

Причем правило редиректа сложное, использует функцию base64_encode, md5 или другую функцию, которая преобразует URL в допустимое уникальное название файла.

Нужен редирект http://site.ru/old_url   =>  http://site.ru/cache/new_url.html

где  new_url = base64_encode(old_url)

или new_url = md5(old_url)

или new_url = другая_функция(old_url)

Но чтобы исходный URL http://site.ru/old_url в строке адреса браузера не менялся!

И редирект нужен только в том случае, если файл http://site.ru/cache/new_url.html существует.

Если такого файла нет, то редиректить некуда, и при первой загрузке страницы скрипт кэша создаст этот файл, а при повторной загрузке уже будет грузиться страница с кэша согласно правилу в .htaccess

Это нужно для работы моей системы кэширования. Сам скрипт кэша я написал.

А вот по такому сложному редиректу никакой информации не нагуглил. 

Вариант на уровне PHP не устраивает:

http://site.ru/cache/new_url.html))

{

   echo file_get_contents(http://site.ru/cache/new_url.html);

   //или require(DOCUMENT_ROOT/cache/new_url.html)

  die();

}

?>

такой вариант работает медленно.

9 лет назад
osmanbekirov
41 год
14 лет в сервисе
Был
2 года назад

Заявки фрилансеров

Нет заявок фрилансеров