Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Rest 使用cURL的HTTP GET给出SSL错误_Rest_Http_Ssl_Curl_Nss - Fatal编程技术网

Rest 使用cURL的HTTP GET给出SSL错误

Rest 使用cURL的HTTP GET给出SSL错误,rest,http,ssl,curl,nss,Rest,Http,Ssl,Curl,Nss,我已经编写了一个REST服务器,它监听端口8000。我正在尝试使用cURL命令从同一台机器调用api- curl -H "accept: application/json" https://localhost:8000/status -v 我得到以下错误 * About to connect() to localhost port 8000 (#0) * Trying ::1... * Connected to localhost (::1) port 8000 (#0) * Initia

我已经编写了一个REST服务器,它监听端口8000。我正在尝试使用cURL命令从同一台机器调用api-

curl -H "accept: application/json" https://localhost:8000/status -v
我得到以下错误

* About to connect() to localhost port 8000 (#0)
*   Trying ::1...
* Connected to localhost (::1) port 8000 (#0)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
*   CAfile: /etc/pki/tls/certs/ca-bundle.crt
  CApath: none
* NSS error -12263 (SSL_ERROR_RX_RECORD_TOO_LONG)
* SSL received a record that exceeded the maximum permissible length.
* Closing connection 0
curl: (35) SSL received a record that exceeded the maximum permissible length.
我尝试使用-k选项绕过证书验证,但没有效果。我错过了什么?如果需要更多信息,请发表评论

编辑: 我的朋友建议在cURL命令中只使用http。然后,它绕过了SSL检查,并且工作正常。但是https出了什么问题?我是否还需要为本地主机安装证书?还有,为什么-k选项不起作用

我的朋友建议在cURL命令中只使用http。然后,它绕过了SSL检查,并且工作正常

看起来您的服务器根本没有启用SSL。这就是HTTP起作用而HTTPS不起作用的原因。使用HTTP并没有绕过任何SSL检查,因为HTTP并没有SSL,所以并没有SSL检查可以绕过

还有,为什么-k选项不起作用

-k
选项用于跳过SSL(HTTPS)连接上的证书验证。但它只能在首先有SSL连接的情况下工作。由于您的服务器根本不支持SSL,
-k
将不起作用

我是否还需要为本地主机安装证书


您需要首先在(未知)服务器上启用SSL。如果您对自己的服务器进行了编码,则这意味着需要额外编码。而且,一旦服务器可以执行SSL,您还需要设置服务器可以提供给客户端的证书。

在我的情况下,我必须检查vhost配置。 我必须做的事情是为域定义一个基于特定名称的vhost

可能有人只是想先进行快速测试,不想配置vhost,然后他们会遇到此错误消息。

您的端口8000是否响应SSL请求?!它是否配置了证书?