Используйте сертификат mkcert для локального тестирования PWA - PullRequest
0 голосов
/ 14 января 2020

Я пытаюсь настроить локальную среду разработки для PWA, над которым я работаю. Я установил mkcert на Ma c и могу разместить версию https://localhost на моем компьютере. Теперь я хотел бы открыть страницу на моем Android телефоне. На mkcert github написано:

Мобильные устройства

Для сертификатов, которым можно доверять на мобильных устройствах, вам необходимо установить root CA. Это файл rootCA.pem в папке, напечатанной mkcert -CA ROOT.

На iOS, вы можете либо использовать AirDrop, отправить СА по электронной почте или обслуживать его с HTTP-сервера. После установки вы должны включить полное доверие к нему. Примечание: в более ранних версиях mkcert возникла ошибка iOS, если вы не видите root в «Настройках доверия сертификатам», возможно, вам придется обновить mkcert и восстановить root.

Для Android, вам нужно будет установить ЦС, а затем включить корни пользователей в сборку разработки вашего приложения. См. Этот ответ StackOverflow.

https://github.com/FiloSottile/mkcert

Я установил rootCA.pem на свой телефон. Часть о «включении пользовательских корней» не применима, так как это не приложение.

Но когда я открываю страницу на своем телефоне с помощью https: // [my-local-network-ip]: 1234 Я получаю предупреждение о том, что сертификату нельзя доверять ,

Как я могу доверять сертификату, чтобы я мог локально проверить PWA на своем телефоне?

1 Ответ

0 голосов
/ 14 января 2020

Я согласен с вашей целью - запуск локальной установки на основе TLS может быть полезен с точки зрения производительности и раннего устранения неполадок.

Ваша проблема основана на DNS, и вам необходимо получить доступ к защищенному URL TLS через имя хоста .

Единственный способ настроить DNS на стороне Android - это использовать HTTP-прокси при запуске эмулятора или устройства, подключенного через USB.

In Короче говоря, я бы сделал это:

  • Выдайте свой сертификат для более реального доменного имени, такого как mycompany.com
  • Добавьте это доменное имя в DNS в своей книге Ma c
  • Установите бесплатный прокси, такой как proxyman на Ma c
  • Настройте эмулятор или устройство Android для использования прокси (вам также необходимо доверять сертификат прокси на Android и Ma c)
  • Затем перейдите на https://my company.com с Android

Полная информация доступны в моё письмо

...