Apakah mungkin untuk mengganti konten pada setiap halaman yang dilewatkan melalui proxy yang mirip dengan bagaimana mod_rewrite digunakan untuk URL? Dokumentasi tentang pengganti tidak jelas.
Saya memiliki beberapa halaman, saya membalikkan proxy yang memiliki jalur absolut. Ini merusak situs. Mereka perlu diganti dan alat-alat seperti mod_rewrite tidak mengambilnya karena bukan permintaan 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>
Tidak satu pun di atas berfungsi untuk mengganti string HTML
<link href="/server///uat.site.co.jp/css/css.css
dengan
<link href="/server///uat.site2uk.co.uk/css/css.css
Konf setelah perubahan:
<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. Jika Anda bisa, saya tidak bisa mengatakan itu akan menjadi ide yang bagus .. Bagaimanapun, itu bukan pertanyaan Anda. Menurut dokumentasi Apache , substitute
arahan hanya valid di dalam Directory
blok atau .htaccess
file. Coba buat <location>
blok (bahkan jika itu untuk /) dan masukkan arahan di sana.
a
tag HTML . Mengklik tautan itu kemungkinan tidak akan menghasilkan peramban web mengikuti tautan, melainkan peramban berkas (Windows Explorer) yang mencoba membuka UNC. Apakah Anda mencoba mengganti string itu dalam teks HTML?