È possibile sostituire il contenuto di ogni pagina passata attraverso un proxy simile a come viene utilizzato mod_rewrite per gli URL? La documentazione relativa al sostituto non è chiara.
Ho alcune pagine che sto inviando il proxy che hanno percorsi assoluti. Questo rompe il sito. Devono essere sostituiti e strumenti come mod_rewrite non li stanno raccogliendo in quanto non sono richieste URL.
<VirtualHost *:80>
ServerName servername1
ServerAlias servername2
ErrorLog "/var/log/proxy/jpuat_prox_error_log"
CustomLog "/var/log/proxy/jpuat_prox_access_log" common
RewriteEngine on
LogLevel alert rewrite:trace2
RewriteCond %{HTTP_HOST} /uat.site.co.jp$ [NC]
RewriteRule ^(.*)$ http://jp.uat.site2uk.co.uk/$1 [P]
AddOutputFilterByType SUBSTITUTE text/html
Substitute "s|uat.site.co.jp|jp.uat.site2uk.co.uk|i"
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://uat.site.co.jp/
ProxyPassReverse / http://uat.site.co.jp/
</VirtualHost>
Nessuna delle precedenti funzioni funziona in sostituzione della stringa HTML
<link href="/server///uat.site.co.jp/css/css.css
con
<link href="/server///uat.site2uk.co.uk/css/css.css
Conf dopo le modifiche:
<VirtualHost *:80>
ServerName jp.uat.site2uk.co.uk
ServerAlias uat.site.co.jp
ErrorLog "/var/log/proxy/jpuat_prox_error_log"
CustomLog "/var/log/proxy/jpuat_prox_access_log" common
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://uat.site.co.jp/
ProxyPassReverse / http://uat.site.co.jp/
AddOutputFilterByType SUBSTITUTE text/html
Substitute "s|uat.site.co.jp|jp.uat.site2uk.co.uk|ni"
</VirtualHost>
linktag. Se puoi, non posso dire che sarebbe una buona idea .. In ogni caso, questa non è la tua domanda. Secondo i documenti di Apache , la substitutedirettiva è valida solo all'interno di Directoryblocchi o .htaccessfile. Prova a creare un <location>blocco (anche se è per /) e inserisci la direttiva.
atag HTML . Facendo clic su quel collegamento, probabilmente il browser Web non seguirà il collegamento, ma piuttosto un browser di file (Esplora risorse) che tenta di aprire UNC. Stai cercando di sostituire quella stringa nel testo HTML?