Godaddyのホスティングアカウントを持っています。 Apacheを実行するLinuxシステム。彼らがセットアップを行う方法は、プライマリドメインがルートフォルダであるということです。サブドメインを追加すると、そのルートのサブフォルダーにサブドメインが追加されます。ドメインを整理するためにサブフォルダ構造をセットアップしたい。
そのセットアップ方法:
プライマリドメイン:
www.domain.com /
sub.domain.com/sub
ディレクトリ構造を作成し、それぞれにリダイレクトしたいが、URLにwww.domain.comのみを表示したい
www.domain.com/domain/www
sub.domain.com/domain/sub
私は使用してみました:
RewriteEngine On
RewriteCond %{HTTP_Host} ^(www.)?domain.com$
RewriteRule ^(/)?$ domain/www [L]
ただし、URLをwww.domain.com/domain/wwwに変更するだけです
これはhtaccessで実行できますか?
私は同様の原則で自分のサーバーを実行します、これは私の構成です:
GoDaddyがこのタイプのことをサポートしていると仮定すると(あなたの質問からと思われます)、明らかにパスを変更する必要がある場合を除いて、ほとんど変更を加えずに動作します。この構成は、/var/www/vhosts/example.com/www
をwww.example.com
のようなフォルダーに書き換えます。
RewriteEngine on
# Directory listing icons!
RewriteRule ^/icons/(.*)$ /var/www/icons/$1 [L]
# Ensure there is no www.
RewriteCond %{HTTP_Host} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1$1 [R,L]
# Special case for the base domain
RewriteCond %{HTTP_Host} ^(localhost|[^.]+\.[^.]{1,8}(\.au)?)$ [NC]
RewriteRule ^(.*)$ /var/www/vhosts/%1/www$1
# Rewrite subdomains into subdirectories
RewriteCond %{HTTP_Host} ^(.*?)\.(localhost|[^.]+\.[^.]{1,8}(\.au)?)$ [NC]
RewriteRule ^(.*)$ /var/www/vhosts/%2/%1$1
元のwww.domain.comドキュメントルートが/user../public_html/www.domain.com/
をポイントしており、そのドキュメントルートを/user../public_html/www.domain.com/domain/www
に変更する場合、your.htaccessでこのconfを試して、www.domain.comドキュメントルートを変更します。/domain/wwwへ
RewriteEngine on
RewriteRule ^/$ /domain/www/