Heroku Hobby Dyno: ошибка при установлении соединения: net :: ERR_SSL_PROTOCOL_ERROR, проверка сервера в порядке, но сервер ALPN не согласен с протоколом - PullRequest
0 голосов
/ 22 ноября 2018

У меня есть простое приложение, в котором клиент отправляет запрос на подключение к каналу веб-сокета при загрузке страницы через соединение wss.Я развернул свое приложение на heroku в домене my_app.heroku.com.Всякий раз, когда я открываю свой сайт, я получаю ошибку Error in connection establishment: net::ERR_SSL_PROTOCOL_ERROR.Я понимаю, что это проблема SSL, а также то, что для использования SSL Heroku вы должны иметь аккаунт любителя.Итак, я обновил приложение до хобби (один день назад), но оно не устранило проблему.

У меня возникла проблема с поиском в Google, и из того, что я вижу, следует, что дополнительные настройки помимо обновления до Heroku Hobby требуются только при использовании собственного доменного имени, которым я не являюсь.Как я могу получить SSL, работающий на моем домене my_app.heroku.com с помощью Hobby dyno?

РЕДАКТИРОВАТЬ: Если я запускаю curl -vI <my_app>.heroku_app.com, я получаю следующее:

curl -vI https://<my_app>.herokuapp.com
* Rebuilt URL to: https://<my_app>.herokuapp.com/
*   Trying __.___.___.___...
* Connected to <my_app>.herokuapp.com (__.___.___.___) port 443
(#0)
* found 148 certificates in /etc/ssl/certs/ca-certificates.crt
* found 592 certificates in /etc/ssl/certs
* ALPN, offering http/1.1
* SSL connection using TLS1.2 / ECDHE_RSA_AES_128_GCM_SHA256
*        server certificate verification OK
*        server certificate status verification SKIPPED
*        common name: *.herokuapp.com (matched)
*        server certificate expiration date OK
*        server certificate activation date OK
*        certificate public key: RSA
*        certificate version: #3
*        subject: C=US,ST=California,L=San Francisco,O=Heroku\, Inc.,CN=*.herokuapp.com
*        start date: Wed, 19 Apr 2017 00:00:00 GMT
*        expire date: Mon, 22 Jun 2020 12:00:00 GMT
*        issuer: C=US,O=DigiCert Inc,OU=www.digicert.com,CN=DigiCert SHA2
High Assurance Server CA
*        compression: NULL
* ALPN, server did not agree to a protocol
> HEAD / HTTP/1.1
> Host: <my_app>.herokuapp.com
> User-Agent: curl/7.47.0
> Accept: */*
>
< HTTP/1.1 200 OK
HTTP/1.1 200 OK
< Server: Cowboy
Server: Cowboy
< Connection: keep-alive
Connection: keep-alive
< Content-Type: text/html; charset=utf-8
Content-Type: text/html; charset=utf-8
< Content-Length: 1154
Content-Length: 1154
< Date: Thu, 22 Nov 2018 08:39:51 GMT
Date: Thu, 22 Nov 2018 08:39:51 GMT
< Via: 1.1 vegur
Via: 1.1 vegur

1 Ответ

0 голосов
/ 27 ноября 2018

Я нашел ответ после того, как наконец нашел этот вопрос .Я думал, что все время проблема была связана с настройкой SSL-сертификатов на Heroku, однако это было связано с моим клиентским кодом.Согласно учебному пособию, которому я следовал, соединение WS было «wss: //my_app.herokuapp.com: 80 / subscribe».Исправлено удаление номера порта.

...