Как сделать, чтобы сайт открывался только по HTTPS?

HTTPS-редирект — это серверная настройка — принудительное перенаправление всех HTTP-запросов на HTTPS-версию сайта.

Механизм реализуется через ответ сервера с кодом 301 и заголовком Location, который указывает браузеру переход на защищённый URL, обычно настраивается на уровне веб-сервера или балансировщика.

Google рекомендует использовать именно 301-редиректы при переходе на HTTPS, так как они передают сигналы каноничности и ускоряют переиндексацию.

Для полного запрета HTTP добавляют заголовок HSTS с max-age до 31536000 секунд, после чего браузер автоматически обращается только к HTTPS.

HSTS не заменяет редирект, потому что поисковые боты его не учитывают и ориентируются на серверные 301-ответы.