Кстати, это вариант - ставить прочерк в качестве основного имени:
server_name - mail.*;
Синтаксически выглядит не плохо. Вариант "_"
server_name _ mail.*;
можно остваить для совместимости с существующими конфигурациями.
Ещё один вариант - разрешить
server_name mail.*;
а в случае вышеописанного запроса без Host вместо редиректа выдавать 404,
поскольку от редиректа в виде http://-/dir/, http://_/dir/ или
http://mail.*/dir/ пользы примерно столько же.