Virtualhosts and map

Varix nginx-forum at
Wed Feb 27 11:40:27 UTC 2013

Hallo Jonathan,

I have some proplems with the english language. This is bad in the IT

My problem is, i can't find an complett example to do that for education.
All I find is
the "old Way" with sites-availbled and sites-enabled, what I have done for

In January I chance nginx to the new version.

My files in the folder sites-availabled

My default file

# default server

server {
    listen       80 default_server;
    server_name  _;
    access_log logs/default/default.access.log;
    error_log logs/default/default.error.log;
    root /www/default;
    location / {
        root   /www/default;
        index  index.html index.htm;

    location /i/ {
         alias /www/123/;
    # redirect server error pages to the static page /40x.html
    error_page 400 401 402 403 404  /40x.html;
    location = /40x.html {
         root  /www/default/html;

    # redirect server error pages to the static page /50x.html
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /www/default/html;

If the IP ( is type in the browser, it shows only domain

After a few days I found the reason for this:

Change: now if the "include" directive with mask is used on Unix
             systems, included files are sorted in alphabetical order.

My solution for this is to make a new big nginx.conf
In the part with the serverblocks the latest is the default one and all is
This solution is OK for a few domains, but not for many domains.
I read that this can be done with map. But I can't find an example for

Now I am looking for examples how I can do that with map.

This from the nginx docu is not enough for me.

map $http_host $name {

    default       0;   1;
    * 1;   2;
    * 2;  3;
    wap.*         4;


Posted at Nginx Forum:,236611,236669#msg-236669

More information about the nginx mailing list