Я бы порекомендовал исследовать некоторые недорогие хостинги, поскольку то, что вы описываете, обычно невозможно с заблокированным портом 80 без участия третьей стороны.
Это не обязательно - вы все равно можете разместить сайт - но вы почти наверняка будете использовать один из двух вариантов ниже.
Использование службы DNS с отдельным поддоменом динамического поставщика DNS
Что касается вопроса о перенаправлении HTTP-запросов в HTTPS, то, исходя из подробностей вашего поста, я предполагаю, что ваш DNS-провайдер для example.com это облегчает. Предполагая, что вы хотите перенаправить их на https://powe.ddns.net, я бы сделал это напрямую через URL Redirection:
www.example.com --> https://powe.ddns.net
example.com --> https://powe.ddns.net
Дальнейшее перенаправление HTTPS должно быть ненужным.
Использование доменов напрямую с динамическим поставщиком DNS
Динамические службы DNS, которые распределяют субдомены, полезны, но вы можете исследовать поставщика DNS (вашего текущего регистратора или стороннего поставщика), который имеет динамический DNS-клиент и позволяет использовать ваш домен (например, https:// пример. com) непосредственно с этими услугами.
Хотя обычно это возможно при наличии 80-го порта, перенаправление HTTP на HTTPS (например, http://example.com -> https://example.com) в вашем случае невозможно без вмешательства третьей стороны, поскольку записи перенаправления URL и базовые записи DNS A создадут проблему, связанную с IP-адресом (ами) для данной записи (поэтому это будет обрезано при использовании URL-адресов, отличных от HTTPS).
ОБНОВЛЕНИЕ: В соответствии с собственным принятым ответом ОП, очевидно, CloudFlare будет перехватывать запросы на порт 80 и перенаправлять их на порт 443. У них также очевидно есть динамический клиент DNS.
Независимо от использования CloudFlare, можно по-прежнему использовать HTTPS-версии домена в любом случае.
Что касается перенаправления https://example.com на https://www.example.com без CloudFlare, решение будет заключаться в том, чтобы напрямую указывать IP-адрес вашего сервера и сортировать запросы не www и www на самом сервере.
Если вы еще этого не сделали, просто создайте две записи A как обычно, указывая правильный IP-адрес вашего сервера, например
example.com. IN A 99.100.101.102
www IN A 99.100.101.102
и использовать HTTPS для доступа к ним. Проконсультируйтесь с вашим поставщиком DNS о точных форматах для этих записей.
Обратите внимание, что вам, вероятно, нужно будет сообщить любому клиенту Dynamic DNS, что вы хотите обновить IP-адрес для обеих этих записей.
Затем в Apache перенаправьте https://example.com на https://www.example.com. Опять же, для простоты вы можете использовать:
Redirect / https://www.example.com
внутри виртуального хоста HTTPS для https://example.com, хотя вы можете использовать другие параметры перенаправления (например, 301, 302), особенно для целей SEO.
Сертификаты
В качестве краткого предупреждения о сертификатах, помните, что https://www.example.com является поддоменом https://example.com, и если вы хотите работать с обоими без ошибок браузера, вам необходимо:
Если вам нужны бесплатные сертификаты, которые не являются самозаверяющими, возможный выбор - это сертификат Let's Encrypt. Их веб-сайт не имеет прямого интерфейса для запросов на сертификаты или управления ими, но ZeroSSL имеет как веб-интерфейс, так и клиент командной строки (как в виде сценария Perl, так и двоичного файла Windows). Также доступны другие клиенты.
Единственным недостатком сертификатов Let's Encrypt является то, что они короткие (всего 90 дней) и в настоящее время не выдают групповые сертификаты. Существуют некоторые ограничения скорости выдачи сертификатов, но в настоящее время они достаточно разумны.
URL-адреса в браузере
Хотя можно "замаскировать" URL-адреса, чтобы они вообще не менялись в адресной строке браузера, для этого часто требуется либо отдельный сервер, загружающий контент во фрейм, либо некоторое творческое использование mod_rewrite, которое может работать или не работать в зависимости от числа. факторов.
В случае HTTPS маскирование потенциально может подорвать HTTPS, работающий как задумано (в первую очередь для безопасности). Короче говоря, если вы можете быть довольны минимальными изменениями URL-адреса (например, http:// становится https:// или, возможно, перенаправляет https://example.com на серверную часть https://www.example.com ), я выбрал бы этот маршрут, используя example.com напрямую с провайдером динамического DNS, как описано выше.
SEO соображения
Обратите внимание, что как версии www, так и версии www не будут рассматриваться как отдельные домены с дублированным контентом для целей SEO (индексация с помощью поисковых систем). Поэтому вы можете предпринять соответствующие шаги, если хотите, чтобы ваш контент был проиндексирован правильно, например, Google)