
Apacheによって提供された1つ私のサブドメインサイト(としますsub.mydomain.com
)のURLそれなし末尾のスラッシュは、基礎となるフォルダ内のインデックス ファイルに直接 (外部リダイレクトなしで) 参照します。サブドメイン リクエストは、内部的にサブフォルダにリダイレクトされます。その他のすべての URL は、スラッシュ バージョンへの外部リダイレクトを使用して、通常の Apache の方法で動作するはずです。
すべてのディレクティブは .htaccess ファイル内に記述する必要があります。これを機能させるには、次の操作を実行する予定です。
DirectorySlash
リクエストに応じてスイッチをオフにするsub.mydomain.com/...
sub.mydomain.com/…
リクエストを書き直す/sub/...
- スラッシュのないディレクトリURLを書き換えて、 基になるディレクトリ内を
/sub/...
取得します。index.html
2.と3.のやり方はよく分かっていますが、DirectorySlash off
リクエストのみsub.mydomain.com
、しかし または ではありませんwww.mydomain.com
かother.mydomain.com
?
答え1
聞くところによると、sub
サブドメインはメインドメインと他のすべてのサブドメイン (www
やother
など)と同じディレクトリにマップされるようです。
sub
しかし、サブドメインへのすべてのリクエストが内部的に書き換えられると、/sub
サブディレクトリおそらく、別の を.htaccess
作成/sub/.htaccess
して設定するだけでDirectorySlash Off
、サブドメインへのすべてのリクエストに適用されますsub
。(別のホスト名で同じサブディレクトリにアクセスしていないと仮定します。必要に応じてこれを防ぐことができます。)
この/sub/.htaccess
ファイルは、要件の #3 を実装する場所でもあります。
ルート.htaccess
ファイルは、サブドメインへのすべてのリクエストをサブディレクトリsub
に書き換えるだけです/sub
。
余談:ServerFault でこの質問をしているということは、一般的にはサーバーを完全に制御できると想定されています。その場合、このsub
サブドメインを、サブディレクトリを直接指す独自の vHost コンテナ/sub
(または、理想的にはメイン ドメイン ディレクトリ ツリーの外側のどこか) に構成することが望ましいでしょう。この場合、要件の 2 を実装する必要はなく、DirectorySlash Off
サブドメイン全体に対して設定するだけです。