Xserverで公開ルートを変更できない場合のディレクトリ管理方法(.htaccess活用)

背景・課題

Xserverでは、ドメインごとに 公開ルート(document root)を任意のディレクトリに変更することができません
そのため、public_html 直下にさまざまなファイルやディレクトリが溜まり、

  • どれが実際のサイトデータか分かりにくい
  • リニューアル時の切り替えや整理がしづらい
  • 誤って別用途のファイルを触ってしまうリスクがある

といった問題が発生しがちです。


解決策の概要

サイト本体をサブディレクトリに配置し、.htaccess で内部的にマッピングすることで、
URLはそのままに、実体ファイルだけを任意のディレクトリに集約できます。


ディレクトリ構成例

/public_html/
├─ .htaccess
├─ tools/
├─ dev-tools/
└─ act3inc.com/
   ├─ index.php
   ├─ assets/
   └─ ...
  • アクセスURL: https://act3inc.com/
  • 実体パス : /public_html/act3inc.com/

実装方法(.htaccess)

RewriteEngine On

RewriteRule ^$ act3inc.com/ [L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]

RewriteCond %{REQUEST_URI} !^/act3inc\.com/
RewriteRule ^(.*)$ act3inc.com/$1 [L]

まとめ

Xserverの制約を理由にディレクトリ構成を諦める必要はありません。
.htaccess を使えば URLはルートのまま、実体は自由なディレクトリに配置できます。