Se você não tiver reiniciado o Apache, certifique-se de fazer isso, mas se já tiver feito isso, você pode tentar um filtro de saída global que execute um script PHP personalizado para fazer a sua substituição apenas para ver se isso resolve por algum motivo.
EDIT: com base no seu comentário, pode ser que o substituto não esteja funcionando porque o conteúdo está compactado. Para desativar a compactação, adicione essas linhas ao seu VirtualHost:
RequestHeader unset Accept-Encoding
RequestHeader set Accept-Encoding identity
Se isso não funcionar, tente o seguinte:
Adicione-os ao seu conf, atualizando os caminhos do curso:
#add this outside of any VirtualHost tags
ExtFilterDefine proxiedcontentfilter mode=output cmd="/usr/bin/php /var/www/proxyfilter.php"
#add these in your VirtualHost tag
RequestHeader unset Accept-Encoding
RequestHeader set Accept-Encoding identity
SetOutputFilter proxiedcontentfilter
No proxyfilter.php tem algum código como o seguinte:
#!/usr/bin/php
<?php
$html = file_get_contents('php://stdin');
$html = str_ireplace('uat.site.co.jp', 'jp.uat.site2uk.co.uk', $html);
file_put_contents('php://stdout', $html);
Se isso funcionar, reduza o foco apenas para o conteúdo text / html, como no exemplo.