Я имею
# For blog
LoadModule proxy_html_module libexec/mod_proxy_html.so
LoadModule ssl_module libexec/mod_ssl.so
LoadModule xml2enc_module libexec/mod_xml2enc.so
SSLProxyEngine on
ProxyRequests off
ProxyPass /blog https://xxxx.wordpress.com
ProxyPassReverse /blog https://xxxx.wordpress.com
ProxyHTMLEnable On
ProxyHTMLURLMap https://xxxx.wordpress.com /blog
<Location /blog>
ProxyPassReverse /
ProxyHTMLEnable On
ProxyHTMLURLMap / /blog
RequestHeader unset Accept-Encoding
#LogLevel proxy:debug
</Location>
После этих руководств:
http://www.apachetutor.org/admin/reverseproxies
https://httpd.apache.org/docs/trunk/mod/mod_proxy.html
Когда я посещаю URL http://www.xxxx.com/blog/, он не заменяет ссылками привязки https://xxxx.wordpress.com/2015/09/16/hello-world/с блогом/.
Это работает локально, но не в производстве.
Вот пример HTML, который проходит прокси и появляется в браузере:
<h1 class="entry-title">
<a href="https://xxxx.wordpress.com/2015/09/16/hello-world/" rel="bookmark">Hello world!</a></h1>
Я также использовал другой хост блога (HostGator) вместо Wordpress.com, но он все еще не работает. (Не то, чтобы это должно иметь значение.)
Apache 2.4.16, производство: 2.4.10 (?)
Ссылки в теле ответа не могут быть обновлены с помощью прокси-ссылки, если на целевом хосте нет функции для возврата ожидаемых URL-адресов, или вам нужно явно управлять ссылками в теле ответа с помощью дополнительного кодирования . Подробнее ..
Если он работает в dev, значит, есть такой конфиг, который вам не хватает в продукте.