Прекомпилированный вывод функции Azure в хранилище BLOB-объектов, получающий 500 Внутренняя ошибка сервера

Git для Windows имеет собственное хранилище доверенных сертификатов, которое обычно находится в файле

  • Git для Windows & lt; = 1.9: [Git installdir]\bin\curl-ca-bundle.crt (например, C:\Program Files (x86)\Git\bin\curl-ca-bundle.crt; настроено ключ http.sslCAinfo в [Git installdir]\etc\gitconfig).
  • Git для Windows> = 2.0: [Git installdir]\mingwXX\ssl\certs\ca-bundle.crt, где XX обозначает 32 или 64 (например, C:\Program Files\Git\mingw64\ssl\certs\ca-bundle.crt; настроено ключ http.sslCAinfo в C:\ProgramData\Git\config).

Отключение проверки сертификатов (например, установка git config http.sslVerify false) не является хорошей идеей и может быть чрезвычайно опасной (поскольку вся безопасность проверки отключены и Атаки MitM легко возможны - в зависимости от того, где это установлено, оно применяется для всех новых соединений https).

Чтобы добавить сертификат (может быть, он сам -подписанный тот или иной корневой сертификат) в это хранилище доверия, чтобы автоматически доверять ему, вы должны выполнить следующие шаги:

  1. Откройте URL-адрес сайта в Internet Explorer
  2. Нажмите на символ блокировки на локальной панели и выберите «Показать сертификаты» (или выберите «Свойства сайта» и нажмите « «Сертификаты»)
  3. (необязательно) Выберите сертификат, которому вы хотите доверять, в цепочке сертификатов (третья вкладка) и откройте его
  4. Перейдите ко второй вкладке «Сведения»
  5. Нажмите «Сохранить в файл», выберите «Base64-encoded X.509 (.CER)» и сохраните его с уникальным именем (помните это имя; не рекомендуется использовать имя без мест).
  6. Теперь у вас есть несколько вариантов. Используйте отдельный хранилище доверия сертификатов, в котором содержится только что загруженный сертификат, выполнив git config --global http.sslCAinfo "[yourfilename]" в оболочке cli, чтобы использовать этот сертификат как хранилище доверия. Используйте отдельный магазин доверия сертификатов, который содержит только что загруженный сертификат и все сертификаты из хранилища доверия git, добавив весь контент из файла хранилища системного доверия (путь см. Выше), а затем выполните git config --global http.sslCAinfo "[yourfilename]" в оболочке cli, чтобы использовать это новый магазин доверия. Обновите файл системного сертификата, добавив содержимое вашего только что сохраненного файла в [path-to-git-trust-store-crt-file] (например, type [yourfilename] >> [path-to-git-trust-store-crt-file] в оболочке cli с правами администратора) ИЛИ используя блокнот (сделайте копию файла ca-bundle.crt на desktop, добавьте содержимое файла downlaoded .crt, а затем скопируйте его). Недостаток: изменения могут быть перезаписаны при обновлении git

Готово. Теперь этот сертификат находится в хранилище доверия Git для Windows.

0
задан Jerry Liu 16 January 2019 в 02:54
поделиться

1 ответ

Ошибка может не иметь ничего общего с сериализацией, давайте сосредоточимся на этой строке.

Microsoft.WindowsAzure.Storage: удаленный сервер возвратил ошибку: (500) Внутренняя ошибка сервера.

Если я правильно понял, вход и выход большого двоичного объекта соединяются с эмулятором хранилища Azure. Что-то не так в эмуляторе v5.8 , из-за которого не удается написать BLOB-объект . Установите последний эмулятор (прямо сейчас v5.9), чтобы избавиться от проблемы.

А также обратите внимание, что Runtime Version=1.0.11702.0 означает, что CLI и шаблоны устарели, чтобы потреблять последнюю версию, вынуждают VS загружать при запуске .

  1. Убедитесь, что Azure Functions and Web Jobs Tools является последней , сейчас это 15.10.2046. В меню VS> Инструменты> Расширения и обновления> Обновления обновите расширение, если оно есть в списке.

  2. Удалить папку %localappdata%\AzureFunctionsTools и %userprofile%\.templateengine.

  3. Повторно открыть VS, чтобы создать новый проект Function, подождите в диалоговом окне создания, см. Making sure all templates are up to date....

    enter image description here Через некоторое время мы видим изменения наконечника в виде

    enter image description here [1116]

  4. Нажмите «Обновить» для мгновенной работы с последним шаблоном.

Не забудьте обновить Microsoft.NET.Sdk.Functions до последней версии (1.0.24 прямо сейчас). И нам не нужно устанавливать Microsoft.Azure.Webjobs отдельно, на который ссылается Microsoft.NET.Sdk.Functions внутри.

После запуска функции мы можем видеть время выполнения Version=1.0.12205.0 прямо сейчас.

0
ответ дан Jerry Liu 16 January 2019 в 02:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: