nginx 配置子域名的重定向
2012年9月17日
没有评论
目前很多网站可以为用户分配一个自己定义的二级域名,例如:myname.netingcn.com,但实际访问的地址可能为www.netingcn.com/user.php?uid=myname。要使其能正常工作,首先在DSN解析那里需要配置泛域名解析,接下来在nginx配置文件中设置rewrtie即可。nginx配置如下:
server { listen 80; server_name *.netingcn.com; ... if ($host ~* ^(......)\.netingcn\.com) { set $sub_name $1; rewrite ^/ /user.php?uid=$sub_name last; } ...
这里假设所有的6个字符的子域名都是用户自定义域名,然后对其进行rewrite。另外可以通过set指令把表达式中的某些信息存放在一个变量中,而后可以使用它。