.app domian Директива Apache добавлена только в конфигурацию порта 80 и не загружается - работает с другими gTLD
Итак, у меня есть следующие настройки в моем apache http virtualhost: 80 config:
<Location "/analytics/">
ProxyPreserveHost On
ProxyPass "http://192.168.1.1/"
ProxyPassReverse "http://192.168.1.1/"
</Location>
Это отлично работает при подключении по http и даже применимо к https при использовании обычного gTLD, такого как .com / .org.
Но при использовании этого в gTLD .app конфигурация вообще не работает. Похоже, что из-за принудительной природы SSL HTTPS в .app gTLD он даже не загружает конфигурацию Apache: 80?
Теперь, когда я также добавляю приведенную выше конфигурацию в конфигурацию apache https virtualhost: 443, она работает нормально.
Некоторые вопросы у меня есть:
Я потратил несколько часов на поиск ответа на вопрос, ДОЛЖЕН ЛИ вы применить директивы Location / Directory / Alias к конфигурациям 80 и 443 в Apache? Кажется, они нормально работают, если просто добавить их к 80 большую часть времени? Но не в этом случае .app, но я, кажется, не могу найти, что такое стандарт - нужно ли вам применять эти директивы как к 80, так и к 443, или 80 достаточно, и 443 тогда получит это от 80?
Почему параметр 443 нужен для доменов .app, но не для других gTDL? Это потому, что браузеры просто более строго загружаются с сервера Apache? 443 конфигурации только для .app, но менее строгие для других gTDL при загрузке https?
Некоторые из них публикуются для справки для других, поскольку я не смог найти много информации об этом в Интернете, но меня также интересуют ответы на некоторые из этих вопросов.
Ответы
Когда вы регистрируете свой .APPдомен, ваш регистратор должен показать вам (это требуется реестром - Google) отрывок, объясняющий, что для .APPработы доменов требуется «SSL-сертификат» (sic) .
Это означает, что вы можете выполнять только HTTPS-запросы, но не HTTP-запросы к имени сервера в этом TLD.
Почему? Потому что Google зарегистрировал TLD в списке предварительной загрузки HSTS, который используется браузерами. Это заставляет их никогда не выполнять HTTP-запросы, а только HTTPS, по соображениям безопасности. Вы по-прежнему можете настроить веб-сервер на порт 80 и подключить клиент командной строки или библиотеку HTTP к порту 80. Но основные браузеры подчиняются списку предварительной загрузки HSTS и, следовательно, не будут открывать подключение к порту 80, что бы вы с ними ни делали.
Вы можете найти подробности в моем ответе на тот же вопрос здесь несколько месяцев назад: https://stackoverflow.com/a/50258651/6368697