Nginx redirect wildcard subdomains to https

В данном примере мы перенаправляем весь трафик http на https. Для домена nagg.ru это работает и ошибок нет.

server {
listen      80;
server_name *.nagg.ru;

rewrite     ^ https://$server_name$request_uri? permanent;
}

Однако, если идет 301-й редирект вайлдкард домена, то мы видим проблему:


https://%A6S2.nagg.ru/

Решение простое, нужно использовать переменную $host вместо $server_name

server {
    listen      80;
    server_name *.nagg.ru;

     return 301 https://$host$request_uri$is_args$args;
}