Исключение переписывания Apache2, разрешающее HTTP во внутренней сети и HTTPS вне / публично - PullRequest
0 голосов
/ 29 марта 2020

Запуск сервера Ubuntu 18.04 с Apache2.4.41

Я хочу разрешить перенаправления HTTP / HTTPS на основе IP-адресов. У меня это работало, но недавно оно перестало работать. HTTP всегда будет перенаправлять на HTTPS, если только его 192.168.1. *, Localhost, hostname et c. Я запускаю два разных сайта от Apache, 2-й для обратного прокси.

<VirtualHost *:80>
    ServerName example.com
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/example.com
    RewriteEngine On
    RewriteCond %{HTTPS} !=on
    RewriteCond %{HTTP_HOST} !=localhost
    RewriteCond %{HTTP_HOST} !=127.0.0.1
    RewriteCond %{HTTP_HOST} !=::1
    RewriteCond %{HTTP_HOST} !=lamp-vm
    RewriteCond %{REMOTE_ADDR} !=lamp-vm
    RewriteCond %{REMOTE_ADDR} !=::1
    RewriteCond %{REMOTE_ADDR} !=192.168.1.101
    RewriteRule ^/?(.*) https://example.com/$1 [R,L]
    AddHandler cgi-script .py
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

<VirtualHost *:*>
    ProxyPreserveHost On
    ProxyPass        "/" "http://localhost:8080/"
    ProxyPassReverse "/" "http://localhost:8080/"
    ServerName homebridge.example.com
</VirtualHost>

<Directory /var/www/example.com>
        AllowOverride None
        Options FollowSymLinks MultiViews ExecCGI
        Require all granted
</Directory>

Спасибо!

...