curl to https が機能しないのはなぜですか

curl to https が機能しないのはなぜですか

以下のことは問題なく実行できます。

curl -u "username:password" http://www.example.com/exportfile.xml

しかし、同じコマンドをhttpsバージョンのサイトに使用しようとすると失敗します

curl -u "username:password" https://www.example.com/exportfile.xml

エラーメッセージは次のようになります。

About to connect() to www.example.com port 443 (#0)
Trying "some ip"... connected
Connected to www.example.com (some ip) port 443 (#0)
Initializing NSS with certpath: sql:/etc/pki/nssdb
CAfile: /etc/pki/tls/certs/ca-bundle.crt
CApath: none
NSS error -5938
Closing connection #0
SSL connect error
curl: (35) SSL connect error

ご協力をお願いします

答え1

パラメータを使用してみてください-k/--insecure

manページより:

(SSL) このオプションは、curl が「安全でない」SSL 接続と転送を実行することを明示的に許可します。すべての SSL 接続は、デフォルトでインストールされる CA 証明書バンドルを使用して安全にしようとします。-k, --insecureを使用しない限り、「安全でない」と見なされるすべての接続は失敗します。

$ curl -sku "username:password" "https://www.example.com/exportfile.xml"

-s/--silent何かをダウンロードして統計情報を確認したい場合を除き、私は常にパラメータを使用することを好みます。

また、-sパラメータを使用しても、パラメータ使用時の詳細な出力が防止されないことに注意してください-v

関連情報