以下 Nginx(v 1.2.1)配置
server {
listen 80;
server_name aaa.example.com;
root /var/www/aaa;
}
server {
listen 80;
server_name hello-world.example.com;
root /var/www/hello;
}
因为第二台服务器的 server_name 包含dash
(-
),所以 nginx 会一直打开第二台服务器(无论你访问 hello-world.example.com 还是 aaa.example.com)
我通过重命名hello-world
来修复它helloworld
(删除破折号解决了该问题)。
这不是 Nginx 的一个 bug 吗?
答案1
这有点牵强,但请尝试http
在 nginx 配置的上下文中添加此行:
server_names_hash_bucket_size 64;
然后重新启动 nginx 并查看名称是否-
有效。