请选择 进入手机版 | 继续访问电脑版

『瀚思彼岸』» 智能家居第一站

 找回密码
 立即注册
查看: 401|回复: 4

[进阶教程] nginx通过https反向代理hass的配置注意事项

[复制链接]

5

主题

114

帖子

392

积分

论坛分享达人

积分
392
金钱
278
HASS币
0
发表于 2018-7-12 11:21:47 | 显示全部楼层 |阅读模式
本帖最后由 zhaorjgch 于 2018-7-12 11:30 编辑

NGINX 通过在客户端和后端服务器之间建立起一条隧道来支持WebSocket。为了使NGINX可以将来自客户端的Upgrade请求发送给后端服务器,Upgrade和Connection的头信息必须被显式的设置

hass通过 /api/websocket?latest 接收信息,你必须加入 proxy_set_header Upgrade $http_upgrade;
         proxy_set_header Connection "upgrade";
nginx 反向代理的完整配置:

        listen 你的端口;
        # 域名,如果有多个空格隔开
        server_name 你的域名;
        # 启用ssl
        ssl on;
        # 证书文件的放置路径。证书文件即通过上文《获取证书》的方式获得。
        ssl_certificate /usr/local/nginx/letsencrypt/XXX/full_chain.pem;
        # 私钥文件的放置路径。
        ssl_certificate_key /usr/local/nginx/letsencrypt/XXX/private.key;



location / {
        proxy_pass  http://IP:8123;
        proxy_set_header Host $host;
        proxy_http_version 1.1;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Upgrade $http_upgrade;
         proxy_set_header Connection "upgrade";



}



红色部分要加的注意。

评分

参与人数 1金钱 +7 收起 理由
liehai + 7 膜拜大神!

查看全部评分

回复

使用道具 举报

15

主题

174

帖子

1617

积分

论坛技术达人

积分
1617
金钱
1423
HASS币
0

卓越贡献

发表于 2018-7-12 11:24:15 | 显示全部楼层
我帮楼主解释下,红色部分的目的是让nginx支持 websocket服务的反代
回复

使用道具 举报

5

主题

114

帖子

392

积分

论坛分享达人

积分
392
金钱
278
HASS币
0
 楼主| 发表于 2018-7-12 11:27:38 | 显示全部楼层
syjjx 发表于 2018-7-12 11:24
我帮楼主解释下,红色部分的目的是让nginx支持 websocket服务的反代

高手
回复

使用道具 举报

25

主题

223

帖子

880

积分

高级会员

Rank: 4

积分
880
金钱
657
HASS币
0
发表于 2018-7-12 13:39:47 | 显示全部楼层
正需要,感谢分享
回复

使用道具 举报

0

主题

15

帖子

63

积分

注册会员

Rank: 2

积分
63
金钱
48
HASS币
0
发表于 2018-8-16 16:07:04 | 显示全部楼层
赞,完美解决我用https 访问后卡在登录界面的问题。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2018-11-21 12:25 , Processed in 0.233338 second(s), 37 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表