2014-04-24 103 views
1

我已经笨应用程序,我想使用通配符子域,服务器上的所有设置后,它被允许,则请在下面找到我想要实现:通配符子域重写规则

URL:testing.domain.com 将执行:domain.com/user/profile/testing

我不想重定向,但我希望它通过重写规则完成,即它会调用像index.php这样的后援? /用户/配置文件/测试,并将调用该用户控制器功能。

希望我已经完美地解释了它。

请尽快帮助我。

谢谢。

回答

1

这可能是你在找什么(你必须去适应它为HTTPS使用):

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^(.+)\.domain\.com$ 
RewriteRule ^(.*)$ http://domain.com/user/profile/%1/$1 [L,QSA] 

请注意,如果你有机会到真正的服务器配置,并且可以用这个来代替.htaccess风格的文件,你应该总是喜欢这个选择。 .htaccess样式文件出了名的错误容易出错,使事情变得复杂,难以调试,并且相当慢地降低了服务器的速度。上面的代码在这种情况下需要稍作修改。

+0

嗨,谢谢你的回答,但我不希望它重定向。我希望那个用户会看到testing.domain.com,但是在后台它会调用index.php?/ user/profile/testing。 –

+0

此规则不重定向。它在内部重写。 – arkascha

+0

如果你把http重定向,如果不是,它会在内部重写。我曾尝试过,但我使用的是codeigniter,所以我将URL更改为index.php?/ user/profile/testing之类的东西,但仍然会加载主页。 –