現状のサーバのディレクトリ構成は、かなりの寄せ集め構成になっています。これは、かつてプロバイダのレンタルスペースや無料サーバサービスなどに配置してきた複数のサイトを、自サーバを稼働させた際に一箇所にまとめたためです。
CGIなどサーバ上で動作するプログラムとHTMLなどの静的コンテンツを同じルート配下に置くのはセキュリティ上望ましくありませんが、ここは利便性を取っています。サイト単位で全てのコンテンツがまとまっている方が管理しやすいんですよね。
ただ、バックアップのことを考えると、構成を見直したくなってきました。静的コンテンツの場合、ローカルPCで作成および編集を行ない、それからサーバへアップロードします。しかしCMSによるコンテンツは、ローカルPCを一切介さないので、サーバ上にしか存在しません。
そこで定期的にローカルPCへダウンロードする必要があるのですが、全コンテンツをダウンロードするのは通信コストの無駄なので、差分検索を実行します。CMSによるコンテンツ作成や更新が行われるディレクトリは全体のごく一部なので、そうしたディレクトリを1箇所に集約することで、検索コストを下げることにしました。
というわけで、このブログも”/d/”配下に移動しています。他にも数個のコンテンツを移動済みです。なお、こちらへの配置は永続的ではなく、陳腐化等により更新の可能性が著しく下がった場合は、元の場所へ戻します。
PukiwikiやCGIの掲示板システムは、ディレクトリ移動だけですんなり終わりましたが、WordPressは少しだけ処置が必要でした。後の自分のためのメモをwikiにまとめておきました。
ところで、”/d/”配下へ移動したり、逆に元へ戻したりすると、自サイト内を含め、リンク切れの問題が発生します。これへの対応として、Webサーバのリダイレクト機能を活用しています。現在有効なパスがリダイレクト先になるように設定しておけば、”404 Not Found”を避けられます。他に注意した点は、Webサーバのルートからのパスを維持したまま、”/d/”配下に移動することで、パスのコンフリクトを避けました。