
Я могу без проблем сделать следующее:
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
параметр.
Из страницы руководства:
(SSL) Эта опция явно разрешает curl выполнять "небезопасные" SSL-соединения и передачи. Все SSL-соединения пытаются сделать безопасными с помощью пакета сертификатов CA, установленного по умолчанию. Это делает все соединения, которые считаются "небезопасными", неудачными, если не
-k, --insecure
используется .
$ curl -sku "username:password" "https://www.example.com/exportfile.xml"
Я всегда предпочитаю использовать этот -s/--silent
параметр, если только я что-то не скачиваю и не хочу посмотреть статистику.
Также обратите внимание, что использование -s
параметра не отменяет подробный вывод при его использовании -v
.