nginx默认服务器不工作

我正在使用Debian,最近的dotdeb nginx-lite。 我读过nginxfind的第一个server部分将被用作fallback / default部分,如果域没有特定的服务器部分。

我从我的安装删除了sites-availablesites-enabled ,因为我使用专用的挂载/www相关的HTTP。

我的/etc/nginx/nginx.conf有这些行,包括其他的confs:

  include /www/conf.d/nginx/default.conf; include /etc/nginx/conf.d/*.conf; include /www/conf.d/nginx/*; 

default.conf如下所示:

 server { server_name 0.0.0.0; listen 0.0.0.0:80; rewrite ^ http://mymaintarget.com permanent; } 

这对我不起作用。 我仍然得到这个警告:

 Restarting nginx: nginxnginx: [warn] conflicting server name "0.0.0.0" on 0.0.0.0:80, ignored 

林相当肯定没有其他的服务器部分和default.conf是第一个包括/使用。

任何人都知道什么是错的,或者如何正确configuration默认服务器?

更新完整的configuration文件:

nginx.conf:

 user www-data; worker_processes 8; pid /run/nginx.pid; events { worker_connections 768; } http { sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 10; types_hash_max_size 2048; server_tokens off; include /etc/nginx/mime.types; default_type application/octet-stream; error_log /var/log/nginx/error.log; gzip on; gzip_disable "msie6"; gzip_vary on; # Default VirtualHost include /www/conf.d/nginx/default.conf; # conf.d is empty anyways #include /etc/nginx/conf.d/*.conf; # VirtualHosts include /www/conf.d/nginx/*; } 

default.conf:

 server { listen 80 default_server; rewrite ^ http://blog.flowl.info permanent; } 

设置默认服务器:

 server { listen 80 default_server; rewrite ^ http://mymaintarget.com$request_uri? permanent; } 

default_server参数将包含任何其他域,ip等

更多信息nginx

  # Default VirtualHost include /www/conf.d/nginx/default.conf; # conf.d is empty anyways #include /etc/nginx/conf.d/*.conf; # VirtualHosts include /www/conf.d/nginx/*; 

包含“default.conf”,然后再次包含在/www/conf.d/nginx/*

我删除了第一个包含,并将“default.conf”重命名为“_default.conf”,这样文件是第一个被包含在通配符中的。