服务器

当前位置:首页 > 服务器 >

Nginx配置Rewrite规则实现二级域名

时间:2015-09-06        阅读:次        QQ群:182913345

        服务器中配置二级域名是很普遍的需求,在apache服务器里时我们习惯用.htaccess来完成,比如一个wap二级域名要解析进wap目录文件夹,我们可以在.htaccess里加上如下代码: 

RewriteCond %{HTTP_HOST} ^wap.php520.cn$
RewriteCond %{REQUEST_URI} !^/wap/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /wap/$1
RewriteCond %{HTTP_HOST} ^wap.php520.cn$
RewriteRule ^(/)?$ wap/index.php [L]

在Nginx中一般会在nginx.conf中配置,打开nginx.conf找到location /处。加上下面的代码: 

location / {  
	set $predomain "";
	if ( $host ~* (.*).php520.cn ){
		set $predomain $1;
	}
	if (  $predomain ~*   'wap'  ){
		rewrite ^/(.*)$ /wap/$1 ;
		rewrite ^/wap/test-(\d+)-.html$ /wap/test.php?id=$1 last;
		break;
	}
}

        上面的代码也非常好理解,set是nginx设置变量的方法,~*表示匹配成功,上面的意思就是如果在URL的域名中匹配到了二级域名,则设置二级域名,然后将二级域名和wap对比匹配,如果匹配wap,则rewrite目录进wap目录下,然后就可以在后面添加每条rewrite规则。

上一篇:Linux上配置SVN服务器教程

下一篇:Linux文件类型与文件权限

扫一扫,更多精彩内容推送

PHP技术分享

分享PHP技术,前端技术,数据库,SEO优化,服务器,网络安全等知识,是php程序员工作学习的好帮手!

Copyright © 2013-2015.PHP技术分享 www.php520.cn  版权所有  网站地图    PHP学习交流群

免责声明:网站内容收集于互联网,本网站不承担任何由于内容的合法性及健康性所引起的争议和法律责任。

欢迎大家对网站内容侵犯版权等不合法和不健康行为进行监督和举报。 沪ICP备15014499号-2