关于geth中--http.vhosts和--http.http.corsdomain的一点理解

一、起因:

当firefox添加metamask网络时,提示连接不成功,获取不到chainID。手机、chrome的metamask都能正常添加。

二、网络拓扑:

browser -> nginx -> geth

browser:本地浏览器,安装metamask。

nginx:远端做反向代理,访问域名 https://test.com

geth:go-ethereum服务

三、结论:

在nginx对browser request添加转发头:

proxy_set_header Host $http_host;

此request从nginx到达geth时,请求头中Host会匹配http.vhosts;Origin会匹配http.corsdomain,如果不匹配则拒绝。经抓包 该Origin为“moz-extension://”开头的字符串,需要添加到geth的--http.corsdomain ,test.com需要添加到--http.vhosts。

四、问题:

1、nginx不添加转发头是否可以不添加Origin的情况下直接成功;

2、“moz-extension://”开头的字符串是否包含指纹,如果这个字符串不固定还是可以用"*";

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值