301

nginx的301跳转

今天把vps上的apache换成了nginx,需要对wordpress进行了301重定向,把www.njava.com和njava.com进行合并,通过判断nginx核心变量host来实现:

server {
server_name www.njava.com njava.com ;
if ($host != 'www.njava.com' ) {
rewrite ^/(.*)$ http://www.njava.com/$1 permanent;
}

Tags: ,

星期六, 三月 20th, 2010 服务器 没有评论

discuz给redirect.php做301跳转

类似redirect.php?tid=7&goto=lastpost这种形式URL的页面的子内容和thread-1-1-1.html一样的,但URL形式不一样,SE会当成重复内容。

这种URL形式会出现在主页、版块列表页的最后发表或最后回复位置,discuz7以前版本的上一主题、下一主题等也是此种形式的URL,现在虽然没有,但在代码中还能找到那些参数。

为什么不禁止这种URL形式的索引?

1.主要是不能控制别人链接到这种形式,如果禁止索引这种形式的URL就浪费了链接,所以要做301跳转,把链接和权重转移到标准的静态形式。

2.链接形式出现在首页,不禁止或许可以加快录

给redirct.php做301跳转

有的情况下程序要查找才能得到要显示的tid,所以只能修改程序,用php代码实现301跳转。

打开 redirect.php 文件,将 require_once DISCUZ_ROOT.’./viewthread.php’; 替换为

 
header("HTTP/1.1 301 Moved Permanently");
header( "Location: thread-{$tid}-1-1.html" );
exit();

文件中共有四处,都修改完就可以访问论坛,检查下效果了

Tags: , ,

星期五, 三月 12th, 2010 Web 没有评论
1LMooBmUE153Wnd3zDryWvDyXxQudbFxDr