見出し画像

#42 htaccessで下層をルートにしたい 【ぴよぴよコーダーの開発日記】

ドキュメントルートって、サーバの直下ってことはわかるんですけど、1つのサーバで複数案件ごとにディレクトリ切ってる時って、その案件ディレクトリ直下をドキュメントルートにしたいですよね。ルート相対パスなんかの兼ね合いからね。ってことで、案件ベースにルートを作れる方法を調べてみました。

上記の文章は要するに下記の図みたいなことを言ってます。project_A, project_B, project_Cが、それぞれの案件という図。

画像1

サーバの本当の直下のhtaccessに下記を記述します。

Options +SymLinksIfOwnerMatch
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_REFERER} /project_A/ ← リンク元のURLが /project_A/ 配下
RewriteCond %{REQUEST_URI} !/project_A/ ← リクエスト先のURIが /project_A/
RewriteRule ^(.*)$ project_A/$1 [L,R]

/project_A/ 配下でルートパス指定をしたときは /project_A/ をドキュメントルートとする。それ以外のルートパス指定では、通常通り / をドキュメントルートとするという意味らしいです。

参考:.htaccessを使ってルート階層以外でもルートパスを使えるようにしたかった

この記事が気に入ったらサポートをしてみませんか?