Доступ к PWA через IP-адрес - PullRequest
1 голос
/ 03 августа 2020

Я хотел бы разработать простой веб-сервер домашней автоматизации и предоставить пользовательский интерфейс в виде прогрессивного веб-приложения (я использую Blazor. NET). Стандартного веб-приложения будет недостаточно, потому что мне нужна поддержка уведомлений pu sh, когда приложение не открывается. Сервер будет размещен локально, и доступ к нему будет осуществляться через IP-адрес внутренней сети или publi c IP-адрес с использованием переадресации портов.

Проблема в том, что для работы PWA требуется HTTPS с действующим доверенным сертификатом. Но я просто не могу предоставить такую ​​возможность. При отладке в Visual Studio он генерирует самозаверяющий сертификат localhost, и я могу без проблем получить доступ к приложению с того же компьютера. Но я не могу заставить второе устройство доверять сертификату сервера. Я попытался создать самозаверяющий сертификат с внутренним IP и publi c IP в качестве общего имени, я также попытался зарегистрироваться в DDNS и предоставить домен DDNS в качестве общего имени, ничего не работает. По-прежнему получаю NET :: ERR_CERT_COMMON_NAME_INVALID, а браузер отказывается запускать сервис-воркер PWA.

Я совершенно не знаю, что делать. Мне кажется, что я должен быть владельцем домена (вероятно, заплатить за него и совершенно не знаю, как я это сделаю) и сертификат для этого домена, чтобы чертов chrome доверял ему и запускал этого сервис-воркера.

В обычном веб-приложении я бы просто использовал случайный сертификат и жил с небезопасным восклицанием или даже использовал HTTP. Но PWA, похоже, по какой-то причине требует действительного сертификата. Сомневаюсь, что кто-то приложит столько усилий, чтобы включать и выключать свет в моем маленьком доме.

У вас есть идеи, как решить / исправить / обойти это?

...