LibreNMS经HAProxy强制HTTPS后资源引用异常求助
解决LibreNMS通过HAProxy SSL访问后HTTP资源加载失败的问题
以下是针对性的解决思路:
配置HAProxy传递HTTPS协议标识头
后端LibreNMS运行在HTTP环境,无法感知前端的HTTPS请求,导致生成资源链接时默认用HTTP。需要在HAProxy的backend配置中添加转发头,告知后端当前请求的协议:backend LibreNMS server serv1 192.168.10.17:80 http-request set-header X-Forwarded-Proto https http-request set-header X-Forwarded-For %[src]让LibreNMS信任并使用反向代理头部
在LibreNMS的config.php中添加配置,开启对X-Forwarded-Proto头的支持,同时限制信任的代理IP确保安全:// 替换为HAProxy的私有IP或所在网段 $config['trusted_proxies'] = ['192.168.10.0/24']; $config['use_x_forwarded_proto'] = true;清除LibreNMS缓存
已生成的资源链接可能被缓存,需手动清理缓存:
在LibreNMS服务器上执行:./scripts/cache-clear.php或直接删除
storage/framework/cache目录下的所有文件。排查硬编码的HTTP资源
如果以上操作后仍有问题,检查网页源码中的HTTP资源路径,确认是否存在模板或自定义代码里硬编码的HTTP链接,将其修改为相对路径或通过base_url生成的动态链接。
内容的提问来源于stack exchange,提问作者Pavelko
相关产品推荐
相关产品推荐

