.htaccess将子域指向目录

时间:2011-04-14 14:04:45

标签: apache mod-rewrite subdomain

我有以下目录结构:

site.com/
- index.php
- desktop/
-- index.php
- mobile/
-- index.php

site.com的index.php重定向到desktop / index.php或mobile / index.php,具体取决于用户平台。

问题是我需要不同的子域来指向各自的目录:

mobile.site.com -> site.com/mobile
desktop.site.com -> site.com/desktop

我的应用程序也使用重写来制作SEO友好的URL,所以我需要:

mobile.site.com/login -> site.com/mobile/login
mobile.site.com/user/1 -> site.com/mobile/user/1
...

对.htaccess文件的任何建议?

提前致谢。

2 个答案:

答案 0 :(得分:1)

RewriteCond%{HTTP_HOST} ^ mobile RewriteRule ^ /?(。*)/ mobile / $ 1 [PT,L]

RewriteCond%{HTTP_HOST} ^桌面 RewriteRule ^ /?(。*)/ desktop / $ 1 [PT,L]

另一方面,如果你想重定向,而不是直接传递,在每种情况下都将PT改为R.

答案 1 :(得分:0)

试试这个

RewriteCond%{HTTP_HOST} ^(。*)。site.com $

RewriteRule(。*)%1 / $ 1 [L]