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

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

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

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

nginx

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

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

WordPress

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

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

1回答

7078閲覧

wordpressで作ったサイトが504で見れないので助けてください。

ootaki55

総合スコア14

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

nginx

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

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

WordPress

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

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

3クリップ

投稿2015/09/22 15:17

■ 環境
さくらvps
OS ubuntu
php5-fpm
nginx
mysql
wordpress

はじめまして
サイトを運営していましたが、
昨晩突然、504の表示がされてサイトがアクセスできなくなっています。

nginxのエラーログを確認した所

2015/09/22 19:30:00 [error] 1793#0: *13920 connect() to unix:/var/run/php5-fpm.sock failed (11: Resource temporarily unavailable) while connecting to upstream, client: xxx.xxx.xx.xxx, server: hoge.com, request: "GET /hoge/id HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm.sock:", host: "hoge.com", referrer: "hogehoge.com"

との表記がありました。

原因は不明で、なにかをしたから起きたのではなく突然、504 or 502 が宣告されました。
永続的にサイトが表示されないのではなく、
3時間くらい落ちて、1時間くらいつながってを繰り返しています。

プラグインを止めたり
php、nginxの設定を見なおしたが変わらず。

そこで新サーバー(以降devと表記します。)で環境を作って504が表示されてる
サイトの(以降mainと表記します。) wp-content 以降をdevに移植し
mainのmysqlをdevにdumpしてみましたが状況はかわらず。

試しに、databaseを新規で作って見たところ
問題なく表示され、databaseに問題があるように感じました。

CPUの圧迫や
トラフィックの集中に関係なくサーバーが
504 or 502 が宣告されます。

今後自分がやっていく手段としてなにが最適でしょうか?
まるで勉強不足で情けないのですが、八方ふさがりなので
ご存知の方いましたら、指導していただきたいです。

よろしくお願いします。

やったこと
・keepalive_timeout 伸ばす
・mysql の エラー改善
・worker_connections増やす
・ulimit 増やす
・プラグインを消す

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

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

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

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

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

guest

回答1

0

ベストアンサー

こちらのサイトが参考になると思います。

Client---①--->nginx---②--->php-fpm---③--->mysql

nginx, php-fpm, mysql が各々は、正常に動作していると仮定して、
おそらく症状としては、②の部分でのエラーメッセージかと思います。
原因は③の部分における処理時間がかかっているためかと思います。
②の部分のデフォルトタイムアウト値は60秒なので、それを長く
してあげれば、とりあえずは表示できるようになると思います。

1.ファイルを作成する

configファイル

1/etc/nginx/conf.d/fastcgi.conf 2--- 3fastcgi_intercept_errors on; 4fastcgi_ignore_client_abort off; 5fastcgi_connect_timeout 60; 6fastcgi_send_timeout 300; <--- ココ 7fastcgi_read_timeout 300; <--- ココ 8fastcgi_buffer_size 128k; 9fastcgi_buffers 4 256k; 10fastcgi_busy_buffers_size 256k; 11fastcgi_temp_file_write_size 256k; 12---

※nginx.confに「include /etc/nginx/conf.d/*.conf;」が無い場合は追加して下さい。

2.設定を反映する

shell

1/etc/init.d/nginx reload

根本的な原因については、もう少し調べないとわかりませんが、
上記、一度お試しください。

投稿2015/09/22 15:33

Ken.sakanakana

総合スコア1768

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

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

ootaki55

2015/09/22 16:03

Ken.sakanakana 様 回答ありがとうございます。 試してみたところ エラーログに変化が起きました。 2015/09/23 00:59:21 [error] 4902#0: *233 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: xxx.xxx.xx.xx, server: hoge.com, request: "GET /archive.id HTTP/1.1", upstream: "fastcgi://127.0.0.1:8313", host: "hoge.com", referrer: "hogehoge.com/" ※fastcgiは固定にしてみました 自分新しいエラーメッセージについてググりながら、 作業を進めているので、 もし良かったら同時進行でヒント教えてくいただけたら嬉しいです。 よろしくお願いします。
Ken.sakanakana

2015/09/22 16:40

あと、影響するのが、 /etc/php5/fpm/php.ini --- max_execution_time = 30 --- です。とりあえず300などの大きな数字にしてみてください。 /etc/init.d/php5-fpm restart も必要です。(reloadでも良いかもしれませんが・・・)
ootaki55

2015/09/23 07:57

返信おくれてごめんなさい! 今から上記工程やってみます!
Ken.sakanakana

2015/09/23 09:28 編集

次に発生中の、 「※エラー1 2015/09/22 19:30:00 [error] 1793#0: *13920 connect() to unix:/var/run/php5-fpm.sock failed (11: Resource temporarily unavailable) while connecting to upstream, client: xxx.xxx.xx.xxx, server: hoge.com, request: "GET /hoge/id HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm.sock:", host: "hoge.com", referrer: "hogehoge.com"」 ですが、メモリ不足に陥っている可能性があります。 → http://blog.rhasm.net/tune-nginx-and-php-fpm/ こちらのサイトにキャッシュ時間を限定するなどの対策で回避されておられるようです。 あと、ファイル転送量も大きくしておく必要があるかもしれません。 → http://yosshi.snowdrop.asia/2015/06/23/wordpress%e3%81%a7%e3%82%a2%e3%83%83%e3%83%97%e3%83%ad%e3%83%bc%e3%83%89%e5%ae%b9%e9%87%8f%e3%82%92%e5%a2%97%e3%82%84%e3%81%99/
Ken.sakanakana

2015/09/23 09:54

不具合発生中の以下のコマンドでリソース不足を起している箇所の特定が出来そうです。 % top -d 1 -n 1 % dstat -cdgnylmps topでは、memoryの残量とswapの使用状況 dstatでは、load average, page in/outの頻度, disk&net 転送量など 上記のURLでは、 まず、「 unix:/var/run/php5-fpm.sock failed (11: Resource temporarily unavailable)」の原因は、phpのプロセス不足の可能性としています。 次に同時起動数を増やすと、今度はメモリ不足を起す可能性があります。 そこで、キャッシュ量を減らす為、時間やサイズの設定をされているという流れです。 一つ一つの対応の都度、topやdstatコマンドで状況を確認しながら進められると、何処を手当しなければならないかが分かりやすいと思います。 チューニングでの延命は大変効果的ではありますが、最後はどうしてもリソースの追加が必要になってくる事もあります。リソースを増やすのかコンテンツを減らすのか、トレードオフはこの先出てくる問題として検討をお薦めします。
ootaki55

2015/09/23 11:40

1個1個ためしつつ、解決に向かてみます! ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問