wordpressのBackWPupのプラグインを使ってバックアップの処理を走らせた後に、突然ほぼ全ての画像が「403 forbidden Error」になって画像が表示されない問題が起こった。自分の環境では設定の問題で、ググっても解決策は見つけられなかったため、解決するまでに確認したことと対処した方法をメモ。個人的メモということと、インストールから各種設定方法はたくさんのブロガーさんが紹介されているので今回は省きます。
インストール、設定方法はこちらのサイトが参考になります!!
http://viral-community.com/wordpress/backwpup-5351/
ちなみに「403 forbidden Error」とは、ページや画像はあるけどあなたには見せられないよ!!というエラー。
目次
基本環境
(1) wordpressのVersion 4.0.1
(2) BackWPupのVersion 3.1.4
(3) サーバーはSAKURA INTERNETを利用
プラグインのインストールとかドキュメントは以下から
https://wordpress.org/plugins/backwpup/
公式サイトでは、自分の環境の組み合わせに対して、全員が「Works!」と言っていました。
早速、インストールが完了し、Jobの設定をするところからメモしていきます!!
Generalの設定
Jobは「Database backup」「File backup」「Installed plugins list」にチェック。
アーカイブフォーマットは「Tar GZip」
保存先は、サーバーの指定した場所「Backup to Folder」
Scheduleの設定
とりあえずマニュアルのみ
「manually only」にチェック
DB Backupの設定
全てのTableをバックアップ
file nameを任意ののものに指定
Backup fileは「none」
Filesの設定
Backup root folderから、Backup uploads folderまで全てにチェック
さらに、Special optionの「Include special files」にもチェック
※ディレクトリが表示ちゃうため画像はありません。すいません〜。
Pluginsの設定
任意のファイル名を指定して、「File compression」にチェック
To: Folderの設定
Generalでサーバーに保存するようにしたので、タブに「To:folder」が表示されます。
ここのどこに保存するのかを設定します。ちなみに今回のポイントはここ。(詳細は後ほど…)
では早速設定が完了したところでバックアップの処理を走らせてみます。
JobsのRun Nowを押します。
すると、画面の上に「Job “grooving-earth” started.」と表示されます。
LogsのStatusを確認するとO.Kとなっていました。
バックアップ無事完了!!とほっと一安心したのも束の間、サイトを表示してみると….
画像がリンク切れ!!!えっ、なんで???と一瞬焦ったのだが、wordpressでもそうだけどこういう問題はよくあるのでとりあえず落ち着いて、とにかくエラーの内容を確認。BackWPupが原因だったのは間違いないはずということだけはこの段階でわかる。
Google Chromeの「要素の検証」を使ってエラーの内容を確認すると「403 forbidden Error」が原因だと発覚。
403 forbidden Errorが解決されるまで
「403 forbidden Error」が出る時はだいたい
(1) パーミッションの設定が間違っている
(2) .htaccessが原因
のほぼ2通りを調べると解決されるらしい。
パーミッションはフォルダが「755」でファイルや画像は「644」であれば問題ないとのこと。
早速調べてみたがその通りの設定だったので、どうやらパーミッションの設定ではなさそう。
次に.htaccessを調べてみると、結果これが原因だった。
ネット上では、「.htaccessを開いて Options +FollowSymLinks を追加すれば解決できる」と書いてある。
サーバーに行き、.htaccessに追加してみたが解決されなかった。
それじゃあBackWPupで作られたファイルを削除してバックアップを取る前と同じ状況にしてみたら??と思い、全てのファイルを削除したら、画像が表示された。
どうやら「To: Folderの設定」で、保存場所を「/wp-content/uploads」に設定していて、バックアップファイルを作る時にこのディレクトリを指定していることが間違いだった。自分の設定ではBackWPupを走らせると、
・.htaccess
・バックアップファイル
・.donotbackup
・ログデータ(.html)のファイル
・index.php
が作られるが、この中の.htaccessが邪魔をしているっぽかったので、「wp-content」の直下に「backwpup」のフォルダを作り、保存先を「wp-content/backwpup」に設定し直したら解決できた。
保存先を「/wp-content/uploads」に指定している人は少ないと思うけど、もし同じエラーに遭遇して悩まされている人の助けになればうれしいです!!
LEAVE A REPLY