nginx-0.8.21

Steve steeeeeveee at gmx.net
Mon Oct 26 22:45:46 MSK 2009


-------- Original-Nachricht --------
> Datum: Mon, 26 Oct 2009 21:53:59 +0300
> Von: Igor Sysoev <is at rambler-co.ru>
> An: nginx at sysoev.ru
> Betreff: Re: nginx-0.8.21

> On Mon, Oct 26, 2009 at 07:14:48PM +0100, Steve wrote:
> 
> > > > 2009/10/26 16:36:12 [emerg] 31458#0: host not found in
> "default_server"
> > > of the "listen" directive in
> > > /var/www/hosting/vhosts.conf.d/front/2000_domain.tld.conf:5
> > > > 
> > > > What host does nginx have issue to find?
> > > 
> > > Could you show the 5th line of the 2000_domain.tld.conf ?
> > > 
> > 1  server {
> > 2   #====================================================
> > 3   set          $vhost       "domain.tld";
> > 4   set          $vhost_root  "/var/www/vu-hosting/$vhost";
> > 5   listen       80 default_server;
> > 6   server_name  www.domain.tld .domain.tld;
> > 7   access_log   /var/www/vu-hosting/domain.tld/logs/access_log
> combined;
> > 8   error_log    /var/www/vu-hosting/domain.tld/logs/error_log;
> > 9   root         /var/www/vu-hosting/domain.tld/htdocs;
> 
> Are you sure that it is this file ? This error message should be issued
> for this:
> 
>    listen       default_server;
> 
I don't have that there. I have the 80 in front of default_server. The funny thing is that now I updated all the servers (backend as well) to 0.8.21 and the error is gone. And Firefox was right about the redirection error:
alekto ~ # HEAD -H "Host:192.168.0.71" http://192.168.0.71/
301 Moved Permanently
Connection: close
Date: Mon, 26 Oct 2009 19:36:42 GMT
Location: http://192.168.0.71/
Server: nginx
Content-Length: 178
Content-Type: text/html
Client-Date: Mon, 26 Oct 2009 19:36:42 GMT
Client-Peer: 192.168.0.71:80
Client-Response-Num: 1
Client-Warning: Redirect loop detected (max_redirect = 7)

alekto ~ #


Looking again at the config file I detected a stupid error. I had this in place:
 1  server {
 2   #====================================================
 3   set          $vhost       "domain.tld";
 4   set          $vhost_root  "/var/www/vu-hosting/$vhost";
 5   listen       80 default_server;
 6   server_name  www.domain.tld .domain.tld;
 7   access_log   /var/www/vu-hosting/domain.tld/logs/access_log combined;
 8   error_log    /var/www/vu-hosting/domain.tld/logs/error_log;
 9   root         /var/www/vu-hosting/domain.tld/htdocs;
10   #============================================
11   if ($host !~* "^(.*\.)?(domain\.tld)$") {
12     rewrite    ^/(.*)$ http://$host/$1 permanent;
13   }
14   #============================================


This produces a loop. Stupid me! Checking if $host is not equal to domain.tld and then rewriting the url to $host. Stupid! Stupid. The right config should be:
 1  server {
 2   #====================================================
 3   set          $vhost       "domain.tld";
 4   set          $vhost_root  "/var/www/vu-hosting/$vhost";
 5   listen       80 default_server;
 6   server_name  www.domain.tld .domain.tld;
 7   access_log   /var/www/vu-hosting/domain.tld/logs/access_log combined;
 8   error_log    /var/www/vu-hosting/domain.tld/logs/error_log;
 9   root         /var/www/vu-hosting/domain.tld/htdocs;
10   #============================================
11   if ($host !~* "^(.*\.)?(domain\.tld)$") {
12     rewrite    ^/(.*)$ http://www.$vhost/$1 permanent;
13   }
14   #============================================


// Steve

> 
> -- 
> Igor Sysoev
> http://sysoev.ru/en/

-- 
Neu: GMX DSL bis 50.000 kBit/s und 200,- Euro Startguthaben!
http://portal.gmx.net/de/go/dsl02





More information about the nginx mailing list