Используя обновленный RHEL-7 с поставляемым Apache httpd (httpd-2.4.6-93.el7), у меня есть служба fcgi, которая некоторое время работает хорошо. Недавно мне нужно было добавить новый Apache перед ним с перезаписью URI
например
ProxyPassMatch "/newapi/(.*)" "fcgi://my-server:8000/oldapi/$1"
Глядя на следы, производимые Apache, когда для mod_rewrite включена отладка, он показывает, что мой запрос попадает в / newapi / something, а пункт назначения - fcgi: // my-server / oldapi / something
Но fcgi видит URI / newapi / something, а не перезаписанный.
Есть ли какое-то волшебство, чтобы заставить fcgi передать переписанный URI процессу fcgi?
Я должен отметить, что в документации для мода CGI говорится, что вызов
$q->url(-rewrite=>0)
вернет перезаписанный URI при использовании перезаписи мода apache ... но это не так. Он возвращает тот же исходный полный URL-адрес, что и -rewrite => 1 (по умолчанию).