質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

Q&A

解決済

1回答

903閲覧

nginxとphp-fpmでwordpressが502 bad gatewatになってしまう。

muro

総合スコア99

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

0グッド

1クリップ

投稿2017/12/08 04:02

編集2017/12/08 04:08

wordpressの動作環境をapacheからnginxへの切り替え作業中です。
サーバのOSはcentOS7です。

https://gist.github.com/LeCoupa/e29a457841dc4dd60006
https://qiita.com/koni/items/05158e33b4c8aac07b59
まずは上記のサイトを参考に、下記のようなファイルを作成しました。

# etc/nginx/conf.d/wordpress.conf ## # @server studio # @host hackisition.com # @desc nginx host rules # @author Julien Le Coupanec <julien@gentlenode.com> ## # HTTP Server server { listen 80; server_name example.com; rewrite ^ https://$server_name$request_uri permanent; } # HTTPS Server server { listen 443; server_name example.com; root /var/www/html; index index.php; error_log /var/log/nginx/example.com.log crit; ssl on; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # do not use SSLv3 ref: POODLE client_max_body_size 20M; location / { try_files $uri $uri/ /index.php; } location ~ .php$ { fastcgi_split_path_info ^(.+.php)(/.+)$; fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; fastcgi_index index.php; include fastcgi_params; } location /doc/ { alias /usr/share/doc/; autoindex on; allow 127.0.0.1; deny all; } location ~/.ht { deny all; } }

参考サイトでは「php5-fpm.sock」だったのですが、当環境はphp7で動作しており、5ではバージョンが合わないと思ったので、インストールの際は「yum install php-fpm」で行いました。

# /etc/php-fpm.d/www.conf user = nginx group = nginx listen = /var/run/php-fpm/php-fpm.sock listen.owner = nginx listen.group = nginx listen.mode = 0660 # 残りの項目は変更なし

上記作成後、apacheを停止し、nginxとphp-fpmを起動してからwordpressを開いてみましたが、タイトルが「502 bad gateway」で、内容が真っ白のエラーページが表示されてしまいました。

「/var/run/php-fpm/php-fpm.sock」ファイルが作成自体はされているのですが、0バイトのファイルになっており、FTPから開くことやダウンロードすることができません。削除はできます。
「php-fpm」フォルダおよび「php-fpm.sock」のユーザとグループは、ともにnginxとなっていました。

また、エラーログには以下のように記載されていました。

# /var/log/nginx/example.com.log 2017/12/08 11:47:00 [crit] 3626#3626: *61 connect() to unix:/var/run/php-fpm/php-fpm.sock failed (2: No such file or directory) while connecting to upstream, client: xxx.xxx.xxx.xxx, server: wiredpunch.com, request: "GET /....../ HTTP/2.0", upstream: "fastcgi://unix:/var/run/php-fpm/php-fpm.sock:", host: "wiredpunch.com", referrer: "https://......." # 以下、同様のメッセージが延々と。数値やURLやIPアドレスの部分は変動。
# /var/log/php-fpm/error.log [08-Dec-2017 12:32:43] NOTICE: Terminating ... [08-Dec-2017 12:32:43] NOTICE: exiting, bye-bye! [08-Dec-2017 12:32:43] NOTICE: fpm is running, pid 5584 [08-Dec-2017 12:32:43] NOTICE: ready to handle connections [08-Dec-2017 12:32:43] NOTICE: systemd monitor interval set to 10000ms # 以下同文。

「No such file or directory」が出るということは「php-fpm.sock」が見つからないということだと思われ、やはり0バイトになるのは異常なのでしょうか。
どうすれば正常に「php-fpm.sock」を作成させられるのでしょうか。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

自己解決しました。
https://qiita.com/noraworld/items/69e5032d161b1e05978d
上記サイトなどを参考にしてみると、足りない1行があったので追記したところ、wordpressが起動するようになりました。
なお、これで動作したということは、sockファイルは0バイトで正常ということでしょうか。

# wordpress.conf # (前略) location ~ .php$ { fastcgi_split_path_info ^(.+.php)(/.+)$; fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; # 今回追記した行。 include fastcgi_params; } # (後略)

投稿2017/12/08 05:15

muro

総合スコア99

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問