私はNGINXとサーバー管理の初心者です。
このチュートリアルを使用してNGINXをインストールしました/ PHP/mySQL/WordPress:
このチュートリアルでは、バックエンドのphp-cgiセットアップはfastcgiを使用して構成されます。 php5-fpmは、このチュートリアル中にインストールされました。
apt-get install nginx-full php5-fpm php5 php5-mysql php5-apc php5-mysql php5-xsl php5-xmlrpc php5-sqlite php5-snmp php5-curl
WordPressコーデックのNGINX構成はほとんどのチュートリアルよりも安全であると読んだ後、コーデック構成を使用することにしました。
Codex構成では、バックエンドphp-cgiにphp-fpmを使用します。ブラウザを開くと、502 BadGatewayエラーが発生しました。エラーログは次のとおりです。
"2012/06/10 21:18:27 [crit] 14009#0:* 4アップストリームのクライアントへの接続中にunix:/tmp/php-fpm.sockへのconnect()が失敗しました(2:そのようなファイルまたはディレクトリはありません) :12.3.456.789、サーバー:mywebsite.com、リクエスト: "GET/HTTP/1.1"、アップストリーム: "fastcgi:// unix:/tmp/php-fpm.sock:"、hos t: "mywebsite.com" "
コーデックスによって提供されたメインのNGINX構成ファイルで、空のディレクトリを指すアップストリームphpブロックの「serverunix:」で始まる行に気づきました。
# Upstream to abstract backend connection(s) for PHP.
upstream php {
server unix:/tmp/php-fpm.sock;
# server 127.0.0.1:9000;
}
/ tmpにあるフォルダを確認したところ、空でした。
NGINXで再生するようにphp-fpmを構成できなかったようです。
誰かが私を正しい方向に向けることができますか?
大変感謝いたします!
Unixソケットでリッスンするようにphp-fpmを設定していないようです。あなたが従う指示はDebianのためのものなので、私はあなたが何らかの種類のDebianを使用していると推測しています。
私のDebian/nginx/php設定には、次のファイルがあります。/etc/php5/fpm/pool.d/www.conf
php-fpmが127.0.0.1:9000アドレスではなくUnixソケットでリッスンできるようにするには、これを編集する必要があります。
/etc/php5/fpm/pool.d/www.conf
を読み取るlisten = 127.0.0.1:9000
の行を見つけて、/tmp/php-fpm.sock
に変更します(またはコメントアウトして、その下にlisten = /tmp/php-fpm.sock
を追加します)。または、php-fpm.sockファイルをtmp以外の場所に保存したい場合もあります。グーグルはおそらくそれであなたを助けることができます。