gpt4 book ai didi

javascript - nginx 和奇偶校验的 Websocket 连接?

转载 作者:行者123 更新时间:2023-12-05 06:25:08 27 4
gpt4 key购买 nike

我在云服务器上运行一个 dAPP,并使用启用了 wesocket 的 nginx 和奇偶校验客户端。

我为 https 域安装了 certbot 证书。现在我遇到问题,在使用 https 访问我的网站时,它在 chrome 上给出了一个错误......

  web3-providers.umd.js:1269 Mixed Content: The page at 'https://www. 
chain.com/' was loaded over HTTPS, but attempted to connect to the
insecure WebSocket endpoint 'ws://40.138.47.154:7546/'. This request has
been blocked; this endpoint must be available over WSS.

然后我在 nginx 配置文件上添加了反向代理

location / {
# switch off logging
access_log off;

proxy_pass http://localhost:7556; #Port for parity websocket
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

# WebSocket
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}

然后它给出了一个错误

“WebSocket 接口(interface)已激活。打开 WS 连接以访问 RPC。”

这里有什么问题,我应该尝试什么?

谢谢

最佳答案

https 不允许在页面上加载不安全的内容。

一种可能的解决方案是在应用程序服务器和客户端之间使用 SSL/TLS 终止符。

来自Nginx官方docs ,配置文件的相关部分可能是这样的:

map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}

upstream websocket {
server localhost:7546;
}

server {
listen 443;

location / {
proxy_pass http://websocket;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_set_header Host $host;
}

ssl on;
# specify cert and key

}

在 dApp 中,将 'ws://40.138.47.154:7546/' 更改为 wss://40.138.47.154

关于javascript - nginx 和奇偶校验的 Websocket 连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57293979/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com