我正在使用 Debian,最新的 dotdeb nginx-lite。我已经读过,server
如果域没有特定的服务器部分,nginx 找到的第一部分将用作后备/默认部分。
我从我的安装中删除了sites-available
和sites-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/*;
Run Code Online (Sandbox Code Playgroud)
default.conf 看起来像:
server {
server_name 0.0.0.0;
listen 0.0.0.0:80;
rewrite ^ http://mymaintarget.com permanent;
}
Run Code Online (Sandbox Code Playgroud)
这对我不起作用。我仍然收到此警告:
Restarting nginx: nginxnginx: [warn] conflicting
server name "0.0.0.0" on 0.0.0.0:80, ignored
Run Code Online (Sandbox Code Playgroud)
我很确定没有其他服务器部分,并且 default.conf 是第一个包含/使用的。
任何人都知道有什么问题或配置默认服务器的正确方法是什么?
更新完整的配置文件:
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/*;
}
Run Code Online (Sandbox Code Playgroud)
默认.conf:
server {
listen 80 default_server;
rewrite ^ http://blog.flowl.info permanent;
}
Run Code Online (Sandbox Code Playgroud)
小智 5
要设置默认服务器:
server {
listen 80 default_server;
rewrite ^ http://mymaintarget.com$request_uri? permanent;
}
Run Code Online (Sandbox Code Playgroud)
default_server 参数将包括任何其他域、ip 等
更多信息nginx的
归档时间: |
|
查看次数: |
21194 次 |
最近记录: |