7 messages in ru.sysoev.nginxRe: Behavior of server depends on a f...
FromSent OnAttachments
Gregor JurgeleSep 12, 2008 1:59 am 
Dave CheneySep 12, 2008 2:14 am 
Igor SysoevSep 12, 2008 5:40 am 
Igor SysoevSep 12, 2008 5:40 am 
Gregor JurgeleSep 12, 2008 6:23 am 
Igor SysoevSep 12, 2008 6:34 am 
Gregor JurgeleSep 12, 2008 6:45 am 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:Re: Behavior of server depends on a file nameActions...
From:Igor Sysoev (is@rambler-co.ru)
Date:Sep 12, 2008 5:40:54 am
List:ru.sysoev.nginx

On Fri, Sep 12, 2008 at 07:15:08PM +1000, Dave Cheney wrote:

The default site for a listener is the site marked

server { listen 80 default; }

if no servers are marked default then the first server defined (which depends on the order that include /*.conf is evaluated) will be the default server.

I get around this problem by defining a site called default.conf which includes the listen 80 default; stanza.

Yes, this is second way: use default in listen.

Cheers

On 12/09/2008, at 6:59 PM, Gregor Jurgele wrote:

Hello

I would like to run a few virtual sites on one IP on nginx 0.6.32 compiled from source as Debian package on Debian Etch.

My nginx.conf contents are:

user www-data; worker_processes 1;

error_log /var/log/nginx/error.log; pid /var/run/nginx.pid;

events { worker_connections 1024; }

http { include /etc/nginx/mime.types; default_type application/octet-stream;

access_log /var/log/nginx/access.log;

sendfile on; #tcp_nopush on;

#keepalive_timeout 0; keepalive_timeout 65; tcp_nodelay on;

gzip on;

server_tokens off;

include /etc/nginx/conf.d/*.conf; include /etc/nginx/sites-enabled/*; }

My virtual site file (www.bona-a.com) contents are:

server { listen 80; server_name www.bona-a.com;

access_log /var/log/nginx/www.bona-a.com.access.log;

location / { root /var/www/www.bona-a.com; index default.html default.htm index.html index.htm; }

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # #location ~ \.php$ { #fastcgi_pass 127.0.0.1:9000; #fastcgi_index index.php; #fastcgi_param SCRIPT_FILENAME /scripts $fastcgi_script_name; #includefastcgi_params; #} }

If I name a file or symbolic link in /etc/nginx/sites-enabled/, that holds the information for a virtual site, www.bona-a.com, this site becomes a catch-all site, answering all requests that go to the same ip and do not match any of the sites defined in other files in /etc/ nginx/sites-enabled/.

Same is if I replace -a with - followed by any letter between b and d (including). If I name the file www.bona-e.com or www.bona.com, everything works fine and i get 403 Forbidden as a reply.

What am I doing wrong?

Regards,