5月6日以降、突然、RSSフィードエラーが生じ、フィード出力が空の状態になってました。
こちらのサイトでは、nginx上のWordPressで、RSSフィードにFeedburnerを使い、CDNにCloudFlareを利用しています。 フィードエラーの症状は、https://blog.washo3.com/feedでアクセスすると、真っ白で何も表示されなく、FeedburnerのValidateで検証をかけると、下記のエラー。
Sorry
This feed does not validate.
line 1, column 0: XML parsing error::1:0: no element found
In addition, interoperability with the widest range of feed readers could be improved by implementing the following recommendation.
Feeds should not be served with the “text/html” media type
ちなみに、RSSフィードエラーは初めてではなく、以前にも経験したことがあるので、片っ端からチェックを始めた。
- 50近く使っているプラグインを外してみた
- テーマを変更してみた
- パーマリンクを変更してみた
- 更新から、WordPress自体を再インストールしてみた
- wp-config.php,wp-settings.phpの設定を見直した
- Feedburnerの再構築
だいたい、この辺りで解決するはずなんだが、今回はちょっと手強い。
次に、nginxのキャッシュを消去、CDNのCloudFlareをバイパス、キャッシュのパージ、WordPress内のキャッシュを削除してみたが、解決されず。
で、何気に、WordPressプラグイン管理画面でドロップインに目が行き、wordpress/wp-content/内のドロップインPHPファイルを別ディレクトリに移動し、無効化してみたところ、RSSフィードが正常になり、復活しました。
何のファイルが悪かったのか、移動したPHPファイルを一つずつ元に戻してみたら、どのファイルも問題ないのです。??
さらに、停止したプラグインを元に戻して行ったところ、今回の犯人は、「advanced-permalinks」でしたよ。
最初の方で、プラグインを片っ端から停止し、「advanced-permalinks」も外したはずなのに、直らなかったのは、恐らくキャッシュが残っているかタイミングの問題ではなかったかとの推測です。
日々、頻繁なプラグイン更新は、時には思わぬ障害をもたらすので、プラグインやテーマの更新には気をつけたいものです。
プラグイン・テーマ更新履歴が残ればよいのですが・・・やはり、GitやMercurialで管理した方が良いのかな。(^_^;
コメント