/home-assistant 路径上的 Apache 反向代理仍然从 / 加载资源

/home-assistant 路径上的 Apache 反向代理仍然从 / 加载资源

我的虚拟主机设置:

<VirtualHost *:443>
 
 
    ProxyPreserveHost On
        ProxyRequests off
        ProxyPass /home-assistant/api/websocket ws://192.168.1.125:8123/api/websocket
        ProxyPassReverse /home-assistant/api/websocket ws://192.168.1.125:8123/api/websocket
        ProxyPass /home-assistant http://192.168.1.125:8123
        ProxyPassReverse /home-assistant http://192.168.1.125:8123
 
        RewriteEngine on
        RewriteCond %{HTTP:Upgrade} =websocket [NC]
        RewriteRule /home-assistant/(.*)  ws://192.168.1.125:8123/$1 [P,L]
        RewriteCond %{HTTP:Upgrade} !=websocket [NC]
        RewriteRule /home-assistant/(.*)  http://192.168.1.125:8123/$1 [P,L]
 
 
    SSLEngine On
 
 
        DocumentRoot /home/michal/sites/webmail
 
 
    ServerAlias www.mydomain.com
    Include /etc/letsencrypt/options-ssl-apache.conf
    SSLCertificateFile /etc/letsencrypt/live/mydomain.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/mydomain.com/privkey.pem
</VirtualHost>

但它不起作用。当访问https://example.com/home-assistant家庭助理徽标已加载,我可以看到家庭助理 sitl 尝试从 example.com/url 而不是 example.com/home-assistant/url 加载其资源,因此它不会加载。

如何让它工作?我猜如果代理位于顶层“/”,而不是“/home-assistant”,它就会工作

如何修复我的重写规则以使所有重定向都变为example.com/home-assistant而不是example.com/

答案1

使用正确的 URL 配置家庭助理。

转到配置 > 常规在相应的框中输入您的外部和内部 URL。按保存

https://community.home-assistant.io/t/base-url-deprecation-but-unclear-what-to-do-about-it/200377

最好通过正确配置后端来解决这些问题,而不是让反向代理动态重写 HTML。

相关内容