Позвольте мне начать с того, что мне известно об изменениях Python 2.7.9 для проверки сертификатов SSL. Я также знаю несколько разных способов обойти его, чтобы выключить. Мой вопрос в том, почему я иногда получаю эту ошибку? Я бы подумал, что если что-то не так, оно всегда будет терпеть неудачу, но я не вижу этого. Я весь день работал над кодом, который отправлял запросы, используя urllib
и просто из ниоткуда я начал получать следующую ошибку:
URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)>
Когда я писал этот вопрос, я спрятал и вставил свои изменения (в git), и ошибка прекратилась. Почему непоследовательность?
ОБНОВЛЕНИЕ: эта ошибка также возникает в Python 3, но происходит постоянно.
Возможно, я решил эту проблему. Оказывается, в моей конфигурации apache не хватало SSLCertificateChainFile
настройка. Я точно знаю, что это исправляет ошибку Python 3, поскольку она происходила постоянно. Я предполагаю, что этого больше не будет в Python 2.7.9, но у меня нет способа воссоздать ошибку в Python 2, поэтому я не могу знать наверняка.