обратный прокси-сервер apache2, проблема перезаписи

Я постоянно говорю себе, что это должно быть просто. Предыстория: у меня был настроен сайт ( https://example.com ) с использованием Let's Encrypt для настройки SSL. Работает отлично. Я добавил новый сервер во внутреннюю сеть с другим сайтом, без настройки SSL. Работает отлично. Пора добавить его в качестве поддомена ( http://sub1.example.com ). Я подумал, что простой обратный прокси-сервер в Apache поможет. НО ... когда я перехожу на http://sub1.example.com , меня перенаправляют на https: // sub1. example.com ... Что не работает по очевидным причинам.

default.conf -

<VirtualHost *:80>
ServerName example.com       
DocumentRoot /var/www/html

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

RewriteEngine on
RewriteCond %{SERVER_NAME} =example.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

(Я почти уверен, что вмешивается правило перезаписи, но не знаю, как это исправить?)

Sub1.conf:

<VirtualHost *:80>
ServerName sub1.example.com
<Proxy *>
    Order deny,allow
    Allow from all
</Proxy>

<Location />
    ProxyPass http://10.10.10.145/
    ProxyPassReverse http://10.10.10.145/
</Location>

</VirtualHost>

Итак ... Что мне не хватает? (Я также могу включить файл default-ssl.conf, если он может быть полезен, просто скажите об этом!)

Спасибо!

0
задан 8 August 2018 в 01:54
2 ответа

В опубликованной вами конфигурации нет ничего, что могло бы вызвать перенаправление.

Причина может быть найдена за пределами вашей конфигурации Apache в любой конфигурации вашего целевого URL-адреса ProxyPass http://10.10.10.145/ или, возможно, у вас есть HSTS , настроенный на вашем основном домене example.com с политикой includeSubDomains .
Это применит политику example.com к sub1.example.com и «исправит» «неправильные URL-адреса» прямо в вашем браузере и изменит их с http на httpS.

Тестируйте из окна в режиме инкогнито или простая командная строка curl -v sub1.example.com

1
ответ дан 4 December 2019 в 15:52

HBruijn был прав. Я заглянул в дополнительный файл .conf, загружает Let's Encrypt (/etc/letsencrypt/options-ssl-apache.conf), и там было достаточно HSTS с «includeSubDomains»

. Я знал, что упускаю что-то простое. Спасибо, ребята!

0
ответ дан 4 December 2019 в 15:52

Теги

Похожие вопросы