Я купил сертификат SSL (цепочка Geotrust, RapidSSL) и не могу его правильно развернуть.
var certs = {
key: fs.readFileSync('cert/private.key'),
ca: [fs.readFileSync('cert/intermediate1.crt'),
fs.readFileSync('cert/intermediate2.crt')],
cert: fs.readFileSync('cert/public.crt')
}
https.createServer(certs, router).listen(443);
Этот фрагмент прекрасно работает (даже без атрибута ca в сертификатах) на этом ноутбуке (Windows XP ОС), но совсем не в моей рабочей среде (Arch Linux). (Я установил перенаправление в своем файле HOSTS, чтобы получить полный замок)
версии NodeJS не имеют значения, я тестировал очень старую версию, которая работала на компьютере разработчика. OpenSSL обновлен (1.0.0g).
Я озадачен этой проблемой. Firefox сообщает «ssl_error_rx_record_too_long», а Chrome просто заявляет «ERR_SSL_PROTOCOL_ERROR», другие браузеры еще менее разборчивы.