У меня есть сайт на wordpress example.com. У меня есть SSL-сертификат для одного домена, который можно использовать на нескольких серверах.
Когда пользователь посещает example.com, или любая подпапка, кроме форума, они получают доступ server1 на котором запущен apache.
Когда пользователь заходит example.com/forum они перенаправлены на server2 который запускает nginx. Как мне установить так, чтобы оба IP-адреса отображались в example.com так что перенаправления являются только внутренними, а домен остается example.com во все времена
На моем сайте apache vhost я использую
Redirect permanent /forum http://server2ip
перенаправить на server2
ИЗМЕНИТЬ В СООТВЕТСТВИИ С ОТВЕТОМ LUCA, ЧТОБЫ УСТАНОВИТЬ server1 как ПРОКСИ для SERVER2
Вот моя конфигурация apache vhost для установки
VirtualHost *:80>
RewriteEngine on
ServerName example.com
ServerAdmin me@example.com
DocumentRoot /var/www/example
#Redirect all HTTP requests to HTTPS
# RewriteCond %{SERVER_PORT} 80
# RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]
ProxyPass /forum https://server2ip/
<Location /forum>
ProxyPass https://server2ip/
ProxyPassReverse https://server2ip/
</Location>
<Proxy *>
Order allow,deny
Allow from all
</Proxy>
ProxyHTMLEnable On
ProxyHTMLURLMap https://server2ip/ /forum
</VirtualHost>
Фактически вы перенаправляете клиента на другой сервер. Предполагая, что вы настроили DNS для указания на server1
, вы хотите замаскировать присутствие server2
. Для этого настройте apache как обратный прокси и прокси /forum
запросы к server2
. Вам не нужно настраивать SSL
на server2
.