军哥,请教nginx编写方法
军哥,您好,我想实现这个功能,但是不知道在nginx中怎么实现?系统是phpwind9.0
因为列表页、内容阅读页等整体一致需要,要求
http://bbs.yourdomain.com/read-htm-tid-1.htm 此类网页
换成
http://www.yourdomain.com/read-htm-tid-1.htm
同时保留
http://bbs.yourdomain.com/,
http://auto.yourdomain.com/、…等频道页二级域名能正常访问。
在以前版本的时候使用修改pw文件的形式实现的。
在其global.php文件增加下面一段。
1
2
3
4
5
6
7
8
/***301重定向***/
$host= 'www.yourdomain.com'; //填写你要统一的地址
if ($_SERVER['HTTP_HOST'] != $host && in_array(SCR,array('read','thread'))) {
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://{$host}{$_SERVER}");
}
unset($host);
/***301重定向***/
我知道301重定向
1
2
3
4
5
6
server {
server_name www.yourdomain.com yourdomain.com *.yourdomain.com;
if ($host != 'www.yourdomain.com' ) {
rewrite ^/(.*)$ http://www.yourdomain.com/$1 permanent;
}
}
这样做的结果是所有的非www域名的二级域名都转向了www的首页。各频道的首页也不能用其二级域名显示了。
对于if ($host != 'www.yourdomain.com' ) 这个条件后面是否带'read','thread'字串,该怎样判断?
刚开始学nginx规则,请军哥帮帮忙!
谢谢!
回复 1# 的帖子
rewrite里面带参数 phpwind9.0 新问题 ,不能以PHP文件301判断了?if ($host里带参数, 这个得学学。。看如何实现只子连接转
回复 3# 的帖子
phpwind9.0 新问题 ,不能以PHP文件301判断了?不是的,我是不想修改文件,以后升级就没那么麻烦!
我认为如果通过伪静态规则实现,用伪静态比较好吧。
页:
[1]