先日、とあるサイトで特に何もしていないのに、全ページで急に500エラーが発生しサイトがダウンする事例が発生した。
症状から、最も疑わしかったhtaccessファイルの中身を見ると、覚えのない以下のコードがファイルの先頭に追記されていた。
RewriteEngine On
RewriteBase /
RewriteRule ^.*-n-(\d+)/$ wp-chao.php?n=$1&%{QUERY_STRING} [L]
RewriteRule ^.*-p-(\d+)/$ wp-chao.php?p=$1&%{QUERY_STRING} [L]
RewriteRule ^.*(sitemap\.xml)$ wp-chao.php?sitemap=xml [L,S=10000]
また、コードに記載のあったwp-chao.phpについても、なぜかサーバーのルートディレクトリに勝手に配置されていた。
500エラーの直接の原因は、元々htaccessに書いてあった記述のうち、先頭の1文字だけ削除されていたことによるものだった。
そのためエラー自体はhtaccessを修正することで解消されたが、なぜこのようなことが起きたか分からない。
wp-chao.phpが具体的に何をしているかは現在調査中だが、取り急ぎ問題報告としておく。