Nginx

1个成员

nginx实现带参数目录域名重定向二级域名方法

发表于 2017-01-04 3860 次查看
本文章介绍了关于nginx实现带参数目录域名重定向二级域名方法,有需要学习的朋友可参考一下。

下面的代码是基于nginx的子目录301到其他域名(URL)的规则。作用是例如访问http://www.php100.com/phper/php.html (有杠和没杠是不同的,下面的代码中可以看出来),自动301到 http://php.php100.com

 代码如下 复制代码

location ~* ^/phper/ {
rewrite ^/phper/(.*)$ http://php.php100.com/$1 permanent;
}

测试成功,OK搞定!

例如: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指令把表达式中的某些信息存放在一个变量中,而后可以使用它

发表回复
你还没有登录,请先登录注册