我们网站使用ecshop建站,发现不存在页面全部跳转至首页. 即:当输入一个不存在的死链接时它直接通过302代码跳转至首页,这或许是就是造成ecshop不被搜索引擎收录的原因(造成首页被K)之一,这里就很有必要针对ecshop404代码进行优化,首先来分析一些是什么原因造成ecshop直接跳转首页而不是返回一个404页面。
ecshop程序文件category.php、goods.php、article.php、brand.php等大概月11个页面多处存在以下这样的代码
ecs_header(“Location: ./\n”);exit;
分析得知:以上代码的意思是,如果找不到当前ID下的分类或者商品,则跳转到网站首页。这样子跳转,返回的http状态码将会是302,表明此页面信息暂时性转移,这类跳转代码很容易引起搜索引擎封杀,这是对ecshop进行seo操作中可能被忽视的细节,因此我们需要作出针对ecshop 404的优化,要怎么优化或者说怎么修改呢?方法如下(基于2.7.3版本进行优化更改):
1、打开如下根目录下的11个文件
category.php、goods.php、article_cat.php、article.php、brand.php、topic.php、comment.php、snatch.php、group_buy、auction.php、exchange.php
2、打开上述11个文件搜索如下代码:
ecs_header(“Location: ./\n”);
将之全部修改为如下代码:
ecs_header(“HTTP/1.0 404 Not Found”);
$smarty->display(’404.html’);
同时在模板文件中加入404.html文件
如此修改之后保存上传覆盖之,这样就不是返回302代码而是404代码,后台清除缓存到前台随意输入一个错误链接看是否返回404,