Я пытаюсь выполнить операцию поиска и замены в телах ответов, используя прозрачную конфигурацию обратного прокси-сервера apache, приведенная ниже конфигурация с использованием «mod_substitute» и «mod_proxy» работает должным образом:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
ProxyRequests Off
<Proxy *>
Order deny,allow
Deny from all
Allow from all
</Proxy>
ProxyPass / http://thedomain.ineed.proxied/
ProxyPassReverse / http://thedomain.ineed.proxied/
# Set location
<location />
SetOutputFilter INFLATE;SUBSTITUTE;DEFLATE
Substitute "s|<script src=\"http://static.ak.fbcdn.net/connect.php/js/FB.Share\" type=\"text/javascript\"></script>| |niq"
</location>
</VirtualHost>
Теперь проблема в том, что мне нужно удалить много мусора из тела ответа восходящего проксированного сервера, а mod_substitute обеспечивает только построчную обработку, что не является ни эффективным, ни практичным. Есть ли альтернативные модули или методы для решения этой проблемы?
То, что мне было нужно, было легко реализовать с помощью nginx и этого модуля - https://github.com/agentzh/replace-filter-nginx-module