ERR_CERT_COMMON_NAME_INVALID от jQuery с использованием обратного прокси - PullRequest
0 голосов
/ 06 августа 2020

У меня проблема с 'ERR_CERT_COMMON_NAME_INVALID' при запросе с веб-сайта.

Прежде всего, я действительно немного новичок, когда дело доходит до настройки и использования сертификатов ... так что это, вероятно, что-то глупое, что я сделал или не сделал эфир!

У меня есть ssl-сертификат www.my-dummy-url.abc и api.my-dummy-url.abc (очевидно, my-dummy-url только для примера). Где api.my-dummy-url.abc - это сертификат Subject Alternative Name, а www.my-dummy-url.abc - это сертификат Subject.

Веб-сервер Apache размещается на www.my-dummy-url.abc, а обратный прокси-сервер указывает api.my-dummy-url.abc на Raspberry Pi с небольшой конечной точкой node.js API (/weather).

Я установил node.js на использование express: https.createServer(ssl_options, ..., где ssl_options - это мой cert.pem и key.pem. CORS включен (app.use(cors());), а 'Access-Control-Allow-Origin', '*' присутствует в ответе.

Веб-сайт (кроме вызова API) отлично отображает https://www.my-dummy-url.abc (Chrome) . API (https://api.my-dummy-url.abc/weather) при запросе в адресной строке браузера Chrome или через Postman получает правильный ответ JSON.

Однако с моего веб-сайта в качестве jQuery $.get function Я получаю следующую ошибку:

GET https://api.my-dummy-url.abc/weather net::ERR_CERT_COMMON_NAME_INVALID

Любые идеи, помощники, указатели или решения будут с благодарностью получены ...

В качестве дополнения, если я использую Edge, а не Chrome, он работает ...!

С уважением, Гарольд Клементс

1 Ответ

0 голосов
/ 08 августа 2020

Эта проблема заключалась в том, что Chrome каким-то образом кэшировал сертификат. После выключения и возвращения к нему на следующий день он работал нормально.

...