Nginxはすべてのドメイン名を1つのウェブサイトにリダイレクトします。

Nginxはすべてのドメイン名を1つのウェブサイトにリダイレクトします。

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

server_nameNginxの他のすべての仮想ホストは、およびをroot除いてこのホストと同じですfactcgi_pass。すべて fpm プール、ユーザー、およびユーザー所有フォルダーがあります。

defaultサーバーIPを持つ仮想ホストlisten 80 defaultもありますが、server_nameサーバーIPもsite1にリダイレクトされます。

PSサイトsite1から削除すると、もう機能しません。/etc/nginx/sites-enabled

私がここで何を見逃しているのでしょうか?

ベストアンサー1

問題を発見しました。

sites-availableからのシンボリックリンクエラーが発生しますsites-enabled。 site1のみ有効で、他のファイルは空です。

おすすめ記事