以下 DreamHost wiki 解释了如何透明地将根目录重定向到子目录。
http://wiki.dreamhost.com/Transparently_redirect_your_root_directory_to_a_subdirectory
推荐的代码是..
RewriteEngine 开启 重写库 / RewriteCond %{REQUEST_URI} !^/blog/ RewriteCond %{HTTP_HOST} ^(www\.)?domain\. 重写规则 ^(.*)$ /blog/$1 [L]
但是,推荐的代码仅适用于 www 子域,并限制对 blog 之外的所有根目录的访问。
以下是我的具体问题......
我如何修改代码以使其适用于任何子域(any.domain.com)并且也可以适用于无子域(domain.com)?
我怎样才能使 domain.com 重定向到 domain.com/blog 同时仍允许访问 domain.com/any-other-directory ?
更新:此问题被错误地标记为重复。建议的帖子没有回答有关此特定托管服务提供商的具体实施问题。我还没有足够的声誉点数来将此问题添加到建议的帖子中,因此如果有人将我的问题添加到建议的帖子中,那么我将删除此问题。谢谢。
答案1
其中一些代码..
http://wiki.dreamhost.com/Transparently_redirect_your_root_directory_to_a_subdirectory
..以及其中一些代码..
如何通过 htaccess 重定向 root 并且仅重定向 root?
..做出此解决方案..
RewriteEngine 开启 RewriteCond %{HTTP_HOST} domain\.com [NC] 重写条件 %{REQUEST_URI} ^/$ 重写规则 ^(.*)$ /blog/$1 [L]
仅供参考,如果您在自己网站的根 .htaccess 文件中使用此代码,则需要将“域”更改为您的特定 TLD(顶级域),并将“博客”更改为您希望根透明重定向到的任何子目录。