我正在尝试为 Monero 节点设置钱包 RPC,但是当我使用 cURL 到该端口时,我收到此错误:
curl: (1) Received HTTP/0.9 when not allowed
但是,检查 curl --version 给了我这个:
curl 7.68.0 (x86_64-pc-linux-gnu) libcurl/7.68.0 OpenSSL/1.1.1f zlib/1.2.11 brotli/1.0.7 libidn2/2.2.0 libpsl/0.21.0 (+libidn2/2.2.0) libssh/0.9.3/openssl/zlib nghttp2/1.40.0 librtmp/2.3
我认为只有在没有 nghttp2 的情况下编译 cURL 时才会出现该错误。这是一个运行 20.04 的 AWS 环境。
很高兴看到您完整的 curl 请求。HTTP/0.9 是从 1991 年开始的,在基本的 HTTP/1.0 之前,所以我认为问题出在服务器的响应上。
请试试:
您的 curl 命令带有 --verbose 参数,因此它会输出所有信息。
尝试使用 wget 使用 curl 尝试的相同 url,以及保存的文件的内容是什么。如果从新的空文件夹中执行。
telnet 到该端口并输入:GET / HTTP/1.0
只需按 Enter 键在哪里。
并查看输出。也许您正试图打开错误的端口。
有时问题出在证书上。尝试使用参数:--ssl --sslv2 --sslv3
您还可以强制执行:--http1.1 --http2
此外,您的组织或 ISP 可能正在使用捕获请求或使用 SSL 证书导致问题的透明代理。
干杯
您正在尝试连接到 ESMTP 邮件服务器 - 通过尝试 telnet 到相同的地址和端口来查看 ESMTP 问候来验证这一点 :-)
curl --http0.9 会帮助你。升级 curl 后,我收到了同样的错误消息。
在我的情况下,我从 curl 中得到了同样的错误,结果证明它是一个 ftp 服务器......
因此,对于那些来这里搜索“ curl: (1) Received HTTP/0.9 when not allowed ”的人来说,在浏览器上试试这个:
或者在终端上: