概要
AWS(EC2)上にホスティングされているWordPressのサイトに急にアクセスできなくなった時の対処法について記載する.原因としてはEC2で確保されているストレージの容量不足によるものであった.対処法としてはストレージを圧迫するバックアップファイルを削除することで解決した.バックアップファイルはS3など別途サーバー内に保存することが望ましいだろう.
発生から解決まで
ある日,WordPressで書いた以前のブログ記事にアクセスしてみると,ブラウザ上で「504 Gateway Time-out」が表示される状況に陥った.数日前まではアクセスできていて,急にアクセスできなくなるのが特徴的だった.
原因の1つとしてWordPressサーバーのストレージが圧迫されていることが考えられた.例としてAWS(EC2)上にホスティングしている場合,sshでEC2に接続して以下のコマンドを打ちストレージ容量を確認する.(他のクラウドサーバーや物理サーバーの場合でも同様にストレージの空き容量を確認する)
$ df -h
そうすると,一番容量の大きい項目について使用割合を確認できるので,そこが99%近くになっていたらこれが原因だと考えられる.
私の場合,ここが99%になっていたので,バックアップファイルを削除した.バックアップファイルはWordpressと同一サーバー内に保存せず,S3などの外部サーバーに保存するべきだ.ちなみにバックアップにはUpdraftPlusを用いるのが復元時の事を考慮しても一番良いだろう.
削除後,再度ページを読み込むとアクセス可能となった.
再発予防策
上記の方法でバックアップファイルについてはローカルに保存していたものを削除することで,ストレージが圧迫されるのを防ぐ事ができた.しかし,これは一時的な解決策に過ぎない.今後ストレージが足りなくなった場合にまた今回のような事故が起きる恐れがある.
そのため,既存のEC2のストレージを拡張する具体的な方法についてこちらの記事に記載した.これを事前にしておくことでより安心してサーバーを運用することができるだろう.