È 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>
link
tag. Se puoi, non posso dire che sarebbe una buona idea .. In ogni caso, questa non è la tua domanda. Secondo i documenti di Apache , la substitute
direttiva è valida solo all'interno di Directory
blocchi o .htaccess
file. Prova a creare un <location>
blocco (anche se è per /) e inserisci la direttiva.
a
tag 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?