我很好奇Tumblr的虚荣子域是如何工作的。
我不确定它是否通过htaccess重定向,但你会如何重写:
myname.mywebsite.com
要:
www.mywebsite.com/profile.php?username=myname
非常感谢任何指示。
答案 0 :(得分:0)
您不一定需要重写任何内容。您可以配置Web应用程序实例或网站(在IIS,Apache等中)以响应所有请求,而不管Host
标头(即域名)。然后,Web应用程序可以在应用程序代码中查询Host
标头并做出相应的响应:
<?php
$domainName = $_SERVER['HTTP_HOST'];
if( $domainName == 'foo.mydomain.com' ) {
// do something special?
} else {
echo $domainName;
}
?>
另请注意,Apache网站上的指南(http://httpd.apache.org/docs/2.0/misc/rewriteguide.html)说明了如何根据Host
标题执行URI重写(请参阅“虚拟用户主机”部分):
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.[^.]+\.host\.com$
RewriteRule ^(.+) %{HTTP_HOST}$1 [C]
RewriteRule ^www\.([^.]+)\.host\.com(.*) /home/$1$2