Nginx 将所有域名重定向到同一服务器块

Nginx 将所有域名重定向到同一服务器块

我正在尝试使用 Nginx 和 PHP FPM 设置服务器,但遇到了一些麻烦。

我为每个网站设置了一个 Nginx 虚拟主机和一个 fpm 池。问题是所有域名都显示同一个网站,即使它不是默认网站。

下面是一些示例配置(我已从配置中删除了未更改的部分):

这是将所有其他域重定向到的域的配置:

server {
        listen 80;
        listen [::]:80;
        root /var/www/site1;
        server_name sitename.com www.sitename.com;

        location ~ \.php$ {
               try_files $uri =404;
                fastcgi_keep_conn on;
                fastcgi_pass unix:/var/run/php5-fpm.site1.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
                fastcgi_read_timeout 36000;
    }
    }

这是site1.conf文件/etc/php5/fpm/pool.d

[android]
user = site1
listen = /var/run/php5-fpm.site1.sock
listen.owner = www-data //I also tried with site1

我已经使用 创建了用户useradd -M site1

/var/www/site1文件夹具有正确的权限并归 所拥有site1

Nginx 中的所有其他虚拟主机都与此相同,除了server_namerootfactcgi_pass。它们都有一个 fpm 池、用户和用户拥有的文件夹。

我甚至有一个default虚拟主机,listen 80 defaultserver_name以它作为服务器的IP,但是服务器IP也重定向到site1。

PS:如果我删除site1所有/etc/nginx/sites-enabled网站,它们就都不再起作用了。

我在这里遗漏了什么?

答案1

我发现问题了。

我错误地将符号链接从 sites-available 设置为 sites-enabled,导致只有 site1 起作用,而其他文件都是空的。

相关内容