Tôi muốn thiết lập proxy ngược Apache cho phiên bản Trợ lý tại nhà (hass) đang chạy trong mạng cục bộ của mình.
Tôi đã tạo đường hầm cho lưu lượng truy cập của phiên bản hass cục bộ đến một máy chủ từ xa với ssh -N [email protected] -R 8123:localhost:8123
.
Bây giờ tôi đã cố gắng thiết lập một proxy ngược đơn giản trong Apache:
<VirtualHost *:443>
ServerName hass.example.com
SSLEngine On
# If you manage SSL certificates by yourself, these paths will differ.
SSLCertificateFile fullchain.pem
SSLCertificateKeyFile privkey.pem
SSLProxyEngine on
SSLProxyProtocol +TLSv1.2 +TLSv1.3
SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
ProxyPreserveHost On
ProxyRequests Off
ProxyVia On
RequestHeader set "X-Forwarded-Proto" expr=%{REQUEST_SCHEME}
# Proxy all traffic to hass
ProxyPass / http://localhost:8123/ nocanon
ProxyPassReverse / http://localhost/
ErrorLog ${APACHE_LOG_DIR}/hass.example.com-error.log
CustomLog ${APACHE_LOG_DIR}/hass.example.com-access.log combined
<IfModule security2_module>
SecRuleEngine off
</IfModule>
</VirtualHost>
<VirtualHost *:80>
ServerName hass.example.com
Redirect permanent / "https://hass.example.com"
ErrorLog ${APACHE_LOG_DIR}/hass.example.com-error.log
CustomLog ${APACHE_LOG_DIR}/hass.example.com-access.log combined
</VirtualHost>
Đáng buồn thay nếu tôi cố gắng mở hass.example.com
, trình duyệt phản hồi với 400: Yêu cầu sai
.