文件夹到子域

时间:2012-05-04 15:51:12

标签: .htaccess subdomain

我的服务器提供商停止给我提供在控制面板中创建子域的可能方法,他们说我应该用htaccess解决它。

所以我必须做这样的事情。当用户输入http://asdf.example.com时,它应该获得http://example.com/asdf的内容(因为提供商甚至改变了FTP的结构......它们的类型)

我找不到任何相关教程。提前谢谢。

3 个答案:

答案 0 :(得分:2)

TerryE答案的更通用版本。我没有测试过!!!

RewriteCond %{HTTP_HOST} !www.example.com
RewriteCond %{HTTP_HOST} (.*).example.com
RewriteCond %1/$0        !^([^/]+)/\1
RewriteRule ^.*          %1/$0   [L]

答案 1 :(得分:1)

您可以使用mod_rewrite和mod_proxy执行此操作:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^asdf\.example\.com$
RewriteRule ^ http://example.com/asdf%{REQUEST_URI} [L,P]

答案 2 :(得分:1)

您不需要mod代理。只需进行内部重定向:

RewriteEngine on
RewriteBase   /
RewriteCond   %{HTTP_HOST} =asdf.example.com
RewriteCond   $0           !^asdf/
RewriteRule   ^.*          asdf/$0             [L]

规则重写前缀为asdf/的请求,但仅当(1)主机为http:/asdf...且(2)尚未进行重写时。您需要(2)来防止迭代循环。 $ 0是规则中的匹配字符串。

希望这有帮助。