С помощью .htaccess
Options +FollowSymLinks
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
С помощью Nginх
Нужно добавить одну строку в настройки вашего nginx сервера. Обычное место расположения файлов конфигурации nginx: /etc/nginx/vhosts/
Открываем файл конфигурации и вносим следующу строку (естественно заменив sitename.ru на ваш сайт)в настройку сервера который слушает порт 80:
return 301 https://sitename.ru$request_uri;
301 код ответа сервера для редиректа (напомним код 301- означат перемещен перманентно)
Также нужно убедиться что, есть настройки для обработки запроса через порт 443 ssl. Шаблон конфигурации представлен ниже:
server {
…
…
…
listen 123.123.123.123:80;
return 301 https://sitename.ru$request_uri;
}
server {
…
…
…
listen 123.123.123.123:443 ssl;
}