ウェブサイトの良い放置の仕方を考える
当サイトには十数年前に作ったHTMLファイルが未だ存在している。ただ、そのままだとメンテナンスがやりにくいので、.htaccessに、
と一行入れて、PHPのコードが動くようにしている。そうするとincludeが使えるから楽なのだ。
で、先日、そのHTMLファイルにアクセスするとエラーが出ることに気がついた。PHPのコードが動かなくなっているようだ。
当サイトは(多分)イギリスの会社が運営しているサーバ上にあるので、早速、エキサイト翻訳を使ってサポートに問い合わせてみると、かなり噛み合わないやりとりになり、あれ、どうしようと思ったらわかる人が出てきてくれて、
「いやさ、あんたのやりたいことってださいじゃん。PHPのコードはPHPファイルで動かそうぜ。ハハハ」
と言うので、拡張子をphpにしてmod_rewriteでhtmに見せかけることにした。
ついでに、CGIが700じゃなくて705のパーミッションでしか動かなくなっていることも聞こうと思ったが素直に705にしておいた。
そんなことがあって、うちのように新しいものが追加されることはない冬眠状態のサイト、つまり何もしていないサイトであっても、その状態をキープするのは案外難しいんだなと思った。有料サーバにお金を払い続けていたとしても、PHPがアップデートされたとか、FastCGIになったとか、動作するパーミッションが変わったとかそんな理由で、ファイルは昔と同じ状態でサーバに存在しているのに突然表示されなくなるということがあり得るのだ。
自分のサイトをたまに見ているならどこかで気づくが、そうでない場合、お金を払ってサイトを維持しているつもりなのに実質非公開状態が数十年……ということも考えられる。なんという空しさ。
というわけで、ウェブサイトの良い放置の仕方というのを考えてみることにした。
コミュニティツールの撤去
人気サイトだと、「サイトの更新は終了しますが、掲示板(コメント欄)だけは残しておきます!」なんてことを宣言して、手のかからない承認欲求解消をつい狙ってしまうのだが、私の経験及び放置サイトの閲覧経験から言うと、
- 寂れる
- バイアグラの宣伝が書き込まれる
- 偽ブランド品の宣伝の後、店長 ○○○子みたいな、中国の簡体字による不自然な感じの日本人フルネームの署名が入る書き込みで埋め尽くされる
を回避するのは非常に困難だ。コミュニティを残した目的と合わせて考えると非常に空しい。どうしても連絡が取りたい人はメールを送ってくるだろうし、取り払った方がいい思う。
ユーザにアカウント登録させるプログラムの撤去
以前、MySQLのデータが放置サイトのものとしてはあり得ないほど増大していることに気づき、これはなんだろうと調べてみたら、アカウント作成を許可していたMediaWikiで、毎日100ぐらいのアカウントが作られていて大量のスパムが投稿されていることが判明した。手動で消していったが、アカウントはトータルで12000ぐらいあったと思う。ついでに当サイト(XOOPS Cube Legacy)のアカウントを見てみたら、ここ数年の間に作られたものは(多分)すべてbotだった。
更に驚いたのがメルマガ配信プログラム(acmailer)。どうも、スパマーたちが使っているソフトは"post""email""submit"といった文字が入っているフォームを見つけるととりあえず登録を行うらしく、海外のスパマーが使っているメールアドレスがずらりと並んでいて笑った。
放置サイトで上記のようなプログラム、あるいは設定を残しておいてもスパマーがせっせと登録するだけで、無駄にレンタルサーバの容量を消費するだけなので、新規でアカウントを作れないようにするか潔く外した方がいいだろう。
メンテナンスされていないガジェットの撤去
サイトが隆盛の頃は、“ネットの流行に通じているオレ”を演出したく、話題になっているガジェットやCMSのプラグインをどんどん組み込んでしまうのだが、サイト同様にプログラムにも栄光盛衰があり、大抵、気がついたら開発もメンテナンスも止まっている。そうなると、サーバのPHPがアップデートされてエラー吐きっぱなし、おまけに脆弱性が見つかってクラックされるといったことが起こり得る。
クラックされているわけではないのでそのようなガジェットの具体例として完璧ではないが、かなり前から開発元が放棄しているのに、依然としてブログなどに組み込まれている人気ガジェットが存在している。『あわせて読みたい』だ。
データを集計、解析していたであろうサーバにはだいぶ前からつながらなくなっており、現状、ガジェットは単なる画像でしかないのだが、エラーは吐いていないので気づかない人が多いらしい。今のところドメインは人手に渡っていないようだが、ドメインが失効して悪意のある人が取得したらまずいことなっても不思議ではない。
メンテナンス放棄云々を抜きにしても、この手のツールは「輝いている(あるいは、これから輝かせたい)サイトを更によく見せたい」というものが多く、枯れきった放置サイトに使うのは適切とは言えない。質素倹約の気持ちで取り払った方がいいだろう。
裏技的なものの排除
最初に書いたHTMLファイル上でPHPのコードを実行するための記述が当てはまるが、デフォルトでは出来ないのに裏技で出来るようにした、みたいなのは、遅かれ速かれトラブルを引き起こすような気がする。
既に一部のサーバでトラブルになっているものとして、.htaccessでPHPの設定を行うための、
php_value
がある。.htaccessに上記のものが含まれていると、最近あちこちのサーバで導入されているFastCGI上では、ほぼ確実に500エラーになってサイトが表示されなくなる。
不自然なものはプログラムが進化すると大抵、使う意味がなくなるか使えなくなるものだ。「おまじない」とか「念のため」といったコメントと共に紹介された設定やコードが、将来、非推奨の記述、あるいは意味不明な記述と解釈されてエラーの対象になる可能性は決して低くないだろう。
ただ、現状、ちゃんと動作をしているのに追加したコード、あるいは.htaccessの記述をよくわからずに削除するというのは、それはそれで怖いので、エラーが出て表示されなくなったら真っ先に疑うところとして覚えておくぐらいでいいかもしれない。
というわけで
だいたいこんなもんではないだろうか。
早い話、シンプルな状態を維持して、書きたくなったら大掃除などすることなくさくっと書けるようにしておくというのが、ウェブサイトの良い放置の仕方だと私は思う。