On Thu, Aug 20, 2015 at 02:46:57PM -0700, Igal @ Lucee.org wrote:
> I want to disable processing of all requests that do not have a valid
> hostname

Check your entire configuration for "listen" directives.

http://nginx.org/r/listen

There will be zero or more in each server{} block. If there are zero,
that is equivalent to "listen 80" (if you run as root).

For each "listen" directive with a unique ip:port, add one server{}
block which contains "listen ip:port default_server; return 444;"

> I'm tried to follow the advice on:
> http://nginx.org/en/docs/http/request_processing.html#how_to_prevent_undefined_server_names
> 
> so I have (inside http directive):
> 
>     server {
> 
>         listen      80;
>         server_name "";
>         return      444;
>     }

If your config only has "listen 80", or no "listen" directives at all, then

  server {
    listen 80 default_server;
    return 444;
  }

should do what you want.

> but I am still able to access the website by its IP address?
> 
> what am I doing wrong?

Not causing that server to be the default server for the ip:port you
are connecting to.

        f
-- 
Francis Daly        [email protected]

_______________________________________________
nginx mailing list
[email protected]
http://mailman.nginx.org/mailman/listinfo/nginx

Reply via email to