2016-05-24 13 views
2

私は3つのphp-fpmサーバと1つのnginxサーバを持っています。ここで、nginxサーバを使ってphp-fpmをロードバランスします。nginx-php-fpm cluster

のphp-FPMサーバー1 - 192.168.10.31 のphp-FPM server2の - 192.168.10.32 のphp-FPM server3の - 192.168.10.33

nginxの - サーバー - nginxのサーバー上の192.168.10.12

マイ設定だった。私はのでnginxのサーバー[192.168.10.12]に

[ルート/パス//webfilesへ]ウェブルートを定義する必要があります

upstream php_backend { 
    server 192.168.10.31:9000; 
    server 192.168.10.32:9000; 
    server 192.168.10.33:9000; 
} 

location ~ \.php$ { 
fastcgi_pass php_backend; 
} 

しかし、私の問題はあるが、アクセスログファイルが見つかりませんと言う - 404。ウェブサイトのphpファイルはどこに保管しますか? nginxサーバーまたはPHPサーバーでは?またはnginxとphpサーバーの両方で?

+0

おそらく両方。 NFS共有などでそれらをマウントできますか? –

答えて

1

これは古い質問のようですが、私はこれをグーグルで探している人に私の答えを示します。

Robbie Averillのコメントは正しいですか? NginxとPHPサーバーの両方でファイルをホストする必要があります。これはNFS共有で行うことができますが、これにより処理が遅くなる可能性があります。

これを回避するには、nginxサーバーでコードを更新し、次にrsyncをPHPサーバーに更新します。あなたは簡単に何かないbashスクリプト構築することができ :もちろん

rsync -avzp -e ssh /srv/www/ [email protected]:/srv/www/ 
rsync -avzp -e ssh /srv/www/ [email protected]:/srv/www/ 
rsync -avzp -e ssh /srv/www/ [email protected]:/srv/www/ 

を、あなたはあなたのコードの更新を行い、そしてPHPのマシンを同期させる1つのbashスクリプトでこれを含めたいと思います。