星联网络专注帝国CMS二次功能插件开发-精品网站模板站长代码素材

  • 最近更新
  • 模板:33
  • 记录:12639|
  • 插件:52|
  • 工具:4|
  • 代码:8|
  • 评论:0

【原创】帝国cms的TAG被删除之后状态码404设置方法-本站使用中

前言

在帝国cms中,当你的服务器设置了很多伪静态的时候,比如在百度收录之后,把你的ag页面收录之后,打开收录连接的时候,页面返回的状态码不是404,状态码是301或者是200的,那么这个

  在帝国cms中,当你的服务器设置了很多伪静态的时候,比如在百度收录之后,把你的tag页面收录之后,打开收录连接的时候,页面返回的状态码不是404,状态码是301或者是200的,那么这个怎么解决呢?今天就来把教程分享个大家?

  如果用帝国TAG中,当你删除一个tag的时候,在点击这个tag时会出现“此TAG不存在”,百度抓取时状态码还是正常的200,那么百度爬虫还会认为此页面为正常页面,但当我们删除后,我们实际是要告诉百度百度此页面已不存在,也就是状态码为404,而帝国的大神们没有对此做除理,作为一个SEOer怎么可能让这种情况出现了,太影响网站优化了,所以必须要修改调整

  未调整前的检测图:

  修改方法如下:

  我们分析了e/tag/index.php的文件中当此TAG不存在时会触发printerror函数,那么我们就可以真对printerror进行除理,当我们深入研究后发现一般情况下出发的函数传入的参数如下:

  

if($tagid)
{
	$tagr=$empire->fetch1("select tagname,num,tagtitle,tagkey,tagdes,fclast from {$dbtbpre}enewstags where tagid='$tagid'");
	if(!$tagr['tagname'])
	{
	   // @header("HTTP/1.0 404 Not Found.");
    //     @header("status: 404 Not Found");
		printerror('HaveNotTags','',1);
	}
	$tagname=$tagr['tagname'];
	$num=$tagr['num'];
	$search.="&tagid=$tagid";
}

  因为本站用的是tagid的格式,所以我们只需要在打印前面加上
 

@header("HTTP/1.0 404 Not Found.");
@header("status: 404 Not Found");

  既然找到了错误时输出的内容那么我们就可以在输出内容的最前面加入以下内容:

  那么我们就把上面代码中的注释取消即可

  至于为什么要在最前面加大家可以去查下header使用手册,这里就不在细说了。

  修改后的内容如下:

if($tagid)
{
	$tagr=$empire->fetch1("select tagname,num,tagtitle,tagkey,tagdes,fclast from {$dbtbpre}enewstags where tagid='$tagid'");
	if(!$tagr['tagname'])
	{
	    @header("HTTP/1.0 404 Not Found.");
        @header("status: 404 Not Found");
		printerror('HaveNotTags','',1);
	}
	$tagname=$tagr['tagname'];
	$num=$tagr['num'];
	$search.="&tagid=$tagid";
}


 

  这样当提示“此信息不存在”时你可以看查下,状态码为404

  上传以下图片:


 

 

本网刊登的文章均仅代表作者个人观点,并不代表本网立场。文中的论述和观点,敬请读者注意判断。

本文地址:http://www.xlkjgs.com/notes/ecms/s15601.html

以上内容由本站整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!

星联网络

星联网络是中国最具实战的互联网创业者的知识服务商,这里有互联网行业动态,网络推广,SEO优化,SEM优化,ESC配置,行业经验分型,互联网项目,微信营销、淘宝客赚钱、新媒体营销、京东运营、跨境电商等众多互联网营销知识分享

站长运营站长必备网站运营之道才能长久发展