Sumirexxx

今日もiPhone片手に出かけます

WordPressのブログ記事で500エラーが発生した原因と対処法 はてなブックマーク - WordPressのブログ記事で500エラーが発生した原因と対処法

WordPress

Icw6qyocdlg galymzhan abdugalimov

コーヒーでブレイクタイム中のすみれです。

先週末のこと。Wordpressを更新して何気なく自分のブログを見ていたら、カテゴリーやタグのリンクが500エラーになっていることに気がつきました。

スクリーンショット 2017 01 11 7 52 52

かなりショック。メニューバーもダメ。このブログで少ないながらも皆さんに読んでいただいている「ほぼ日記帳」や「Wordpress」や「Omnifocus」の記事のリンクがことごとく500エラー!!!
これはどげんかせんといかんと思い、腰を据えて対処しました。

リンクエラーの原因は何か?

まず疑ったのはカテゴリー。おかしいことに気がついたのは、カテゴリーのリンクが全滅しているのではなくてある特定のカテゴリーだけがエラーになっていることでした。

エラーの種類もいろいろあるようで、「403エラー」だったら閲覧禁止。

HTTP 403. HTTP 403、またはエラーメッセージ Forbidden(「閲覧禁止」「禁止されています」の意)は、HTTPステータスコードの一つ。 ページが存在するものの、特定のアクセス者にページを表示する権限が付与されず、アクセスが拒否されたことを示すもの。
HTTPステータスコード – Wikipedia

「500エラー」はサーバ内部エラー。

500 Internal Server Error
サーバ内部エラー。サーバ内部にエラーが発生した場合に返される。
例として、CGIとして動作させているプログラムに文法エラーがあったり、設定に誤りがあった場合などに返される。
HTTPステータスコード – Wikipedia

とのこと。他にもいろいろなエラーステータスコードがありますが、今回は「500エラー」だったので内部サーバーエラーということが特定できました。

単体の記事に注目

エラーは依然消えていないけれど、他の記事は正常に動いているので全体の影響ではないと判断して、今エラーの出ているカテゴリーのみに絞って考えることにしました。

まずは「Wordpress」というカテゴリーから。このカテゴリーの記事は全部で20件。これくらいだったら手動でも見ていけるだろうと踏んで、まずはWordpressの管理画面から全記事を下書きに変更しました。

管理画面>投稿一覧>カテゴリー一覧からWordpressを選択して絞り込み検索します。

スクリーンショット 2017 01 12 14 21 25

ひとつずつ記事を下書きに戻していきます。
スクリーンショット 2017 01 12 14 31 26

ある記事でエラーなることを突き止めた!

そうして「Wordpress」カテゴリーのすべての記事を下書きにしたら、今度は一記事づつ公開に戻してブラウザで表示できているかどうかを確認します。思った通り、カテゴリー全体が悪いのではなく、特定の記事までは「Wordpress」カテゴリーもちゃんと動作しています。

スクリーンショット 2017 01 12 14 35 23

地道な作業は続きます・・・。
そして何件目か試したところで「500エラー」が見つかりました。

原因はシェア記事のリンク作成にあった

どうやら、以前少しの期間使っていたShareHTML以外のリンク作成で引っかかってしまっていたようです。
そのシェアしている箇所を消すと、正常に表示されるようになりました。これで原因は突き止められました。

全部直すか、そのままにするのか

じゃあこのエラーになってしまうリンクはどのくらいあるのかというのを、今度はWorpdressプラグインである「Search Regex」で探してみることにしました。
記事を一括置換したり検索したりできるプラグインです。

Search Regexプラグイン(記事やコメント内容を一括置換) – WordPressプラグインの一覧

スクリーンショット 2017 01 12 14 41 50

すると、100リンクくらい見つかりました…。
さてどうするか。すべて違うリンクなので一括置換は難しそう。
でも自分の大事なブログでエラーがあるってわかってるのに放っておくなんてことはできません。

修正、修正、修正・・・

2時間くらい掛かったでしょうか…。気が遠くなるような作業でしたが、なんとかすべてのリンクを修正しました。

今ではほとんどアクセスがないような記事もたくさんありました。それも自分の書いた記事だから最後まで責任持たないと!と謎の使命感に取り憑かれて、そちらも修正しました。なのでおそらく現時点では500エラーが出る記事はなくなったかと思います。

まとめ

訪問してくれた方々には、いったいいつ頃から残念な思いをさせてしまっていたんでしょうか…。

新しいことを試すときには、先々のことも考えて試した方が良いですね。
当時はリンクが切れて500エラーになる日が来るとは思ってもみませんでした。

そう考えると、ShareHTMLの長きにわたる活躍に感謝しかありません!

大変さを語る愚痴っぽくなってしまいましたが、自分が思うよりけっこうブログのこと大事にしてるんだな〜って気がつく作業でもありました。

さらなる読みやすさ&役にたつ&ちょっと楽しいブログを目指していきたいと思います。

これからもよろしくおねがいします。

<