我的服务器上有一个由其他人设置的域,但是我尝试添加第二个域,在按照谷歌上的几个教程后,我遇到了一些问题。
这是我的默认设置(我没有创建这个):
server {
listen 80 default;
#server_name www.domain-one.net domain-one.net;
root /var/www/html/domain-one;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
try_files $uri =404;
include fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_read_timeout 300000;
}
}
该配置工作得非常好,根据我读过的教程,我必须设置另一个文件,所以我这样做了,并创建了一个链接,但是当我运行时,nginx -t
我收到一个错误
nginx: [emerg] a duplicate default server for 0.0.0.0:80 in /etc/nginx/sites-enabled/default:2
这是我创建的第二个配置文件:
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/domain-two;
index index.html index.htm index.php;
server_name domain-two.info www.domain-two.info;
location / {
try_files $uri $uri/ =404;
}
}
猜测我做错了什么?
答案1
您想要拥有两个服务器块。两者都监听相同的 IP 地址(我猜)但使用不同的服务器名称。是的,删除 default_server,因为您不能拥有两个。
server {
listen xxx.xxx.xxx.xxx:80;
server_name mysite.com;
root /home/mysite;
...
}
server {
listen xxx.xxx.xxx.xxx:80;
server_name mysite2.com;
root /home/mysite2;
...
}