Fwd: server_name for localhost actually matches <anything>.localhost

Gianluigi Zanettini info at zane.it
Mon Dec 17 00:10:02 UTC 2018

Hi guys,
I'm testing my config on localhost with nginx/1.15.7 before deploying.
Since I only want to handle specific hostnames, I setup a catch-default:

server {

listen 443 ssl default_server;
    return 400;

Then I setup my real config:

server {

server_name localhost;
root /usr/share/nginx/html;
listen 443 ssl http2;
listen [::]:443 ssl http2;

My /etc/hosts: localhost test.localhost  bogus.com

It works almost as expected: if I open or
https://bogus.com I get my error page, as I expected, and if I open
https://localhost I see my site.

*The problem is*: if I open https://test.localhost , I also see my website!
What? why? my server isn't defined for this hostname!

What am I doing wrong?


| Dr. Gianluigi Zanettini      info at zane.it          |
| Tel: +39 338 8562977         Fax: +39 0532 9631162 |
| http://TurboLab.it           http://zane.it        |
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx/attachments/20181217/6f51c3ae/attachment.html>

More information about the nginx mailing list