Npm SELF_SIGNED_CERT_IN_CHAIN ​​на Azure

Так как npm отказался от поддержки самоподписанных сертификатов вчера, я больше не могу устанавливать какие-либо пакеты из npm, работающие на Windows Azure.

На моей локальной машине я мог решить проблему, применив официальное исправление this. Тем не менее, я не мог найти способ устранить проблему на моем экземпляре сайта. Есть идеи?

Ответы

Ответ 1

Пока мы обновляем NPM на Azure, один простой способ обойти это - создать пользовательское развертывание script (info здесь).

Вот пример репо, демонстрирующий, что настраивать: https://github.com/davidebbo-test/AzureNpmCertWorkaround. В частности, посмотрите этот коммит, который использует обходное решение npm config set ca "".

Если вы не хотите заниматься созданием специального развертывания script с помощью инструмента Azure, вы можете просто захватить .deployment и deploy.cmd из тестового репо и перенести их в корень вашего репо.

Ответ 2

Со вчерашнего дня (27 февраля 2014 года) NPM больше не поддерживает самоподписанные сертификаты: http://blog.npmjs.org/post/78085451721/npms-self-signed-certificate-is-no-more

Решение: либо

Обновите версию npm

npm update -g

- или -

Сообщите текущей версии npm для использования известных регистраторов

npm config set ca = ""

- или ---

В качестве последней версии разрешения я не предлагаю это для проблем безопасности, использование SSL всегда безопаснее, переключите свой реестр на использование HTTP вместо HTTPS:

npm config set registry = "http://registry.npmjs.org/"

Ответ 3

Вы не можете запустить npm install npm -g. npm install нарушается проблема, помните? Хороший совет от комментариев по почте в блоге npm, работал как шарм:

npm config set strict-ssl false

npm install npm -g

npm config set strict-ssl true

Возможно, вам понадобится использовать sudo.

Ответ 4

Имя ошибки: Ошибка: SELF_SIGNED_CERT_IN_CHAIN ​​

Шаги, которые необходимо выполнить для преодоления этой ошибки:

1) Обновите Node.js и npm до последней версии,

2) Запустите эти три команды в последовательности.

  -npm config set strict-ssl false
  -npm update npm –g
  -npm config set strict-ssl true

3) Задайте свойства proxy и https-proxy в конфигурации npm, используя следующие команды:

  -npm config set proxy "http://<proxy-name>:8080" 
  -npm config set https-proxy "http://<proxy-name>:8080"