卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章64334本站已运行4115

phpcms如何将已删除的内容http状态码设置为404

截至目前更新已经持续了两个半月,虽然百度说重定向关系至少要保持三个月,但我的关键词权重已迁移完成,新站流量也很平衡,再加之原网站使用的cdn就是360网站卫士的,动不动改版规则验证失效真是够棘手。所以,我同意删掉更新规则,解除重定向关系,提交死链,这就须要把phpcms已删除内容的http状态码设置为404了。
phpcms如何将已删掉的内容http状态码设置为404
网上的教程有很多,可以分为两种,一种是伪404,就是假的404页面,为的是不丢失流量;另一种就是真实的404,但写下的教程我看的就是老头子,有两个缺点:排版混乱,先后顺序倒转,改文件不说道清楚文件路径,比如说这篇文章:http://www.phpstudio.info/show-109-1212-1.html,本应在第二步的步骤却写到第三步,还有文末说改为global.fnc.php,太少写下一个字母就不说道了,还不标明文件路径,这种文章看得人很窝火;不注重实际的使用情况,很多细节除了等待健全。所以,做为一个负责任的站长,我决定我去写下一篇教程,绝对就是全网看著最舒服的教程。
第一步:在网站根目录建一个page404.php文件,里面写下上:

<?php  
header( $_ENV['SERVER_PROTOCOL']." 404 Not Found", true, 404 ); 
?>

第二步:打开global.func.php,路径/phpcms/libs/functions/global.func.php
在最后一个“}”之前写下上如下代码:

functionpage404(){   
header($_SERVER['SERVER_PROTOCOL']." 404 Not Found", true, 404 );   
require('page404.php');   
exit();   
}

第三步:找到/phpcms/modules/content/index.php
找到if(!$catid || !$id)把后面的showmessage(L('information_does_not_exist'),'blank')替代为page404()
找出if(!isset($CATEGORYS[$catid]) || $CATEGORYS[$catid]['type']!=0)把后面的showmessage(L('information_does_not_exist'),'blank')替代为page404()
找出if(!$r || $r['status'] != 99)把后面的showmessage(L('info_does_not_exists'),'blank')替代为page404()
找到if(!isset($CATEGORYS[$catid]))把后面的showmessage(L('category_not_exists'),'blank')替代为page404()
到此就顺利完成了,不管是列表页还是文章页删除了http状态码都会是404。
phpcms如何将已删除的内容http状态码设置为404
我就是按照这篇文章来操作的:http://www.cmsyou.com/support/138.html,但是操作回去我辨认出我网站看不清楚了,提示信息网页编码错误,原因就是这篇文章在后台公布时代码模块采用了插件,而这个插件里的代码就是有编码格式的,轻易复制到自己的代码里面就会出现编码错误,解决方法就是把该文章的代码先导入到记事本去除一下格式,然后再导入到自己的代码里面,就不会出错了。我的文章编辑器没使用代码插件,大家可以轻易激活采用。
这就是我上面说道的不著重实际采用情况,只有真正实操过写的教程才是桑泰的教程。

卓越飞翔博客
上一篇: PHP页面添加访问密码教程
下一篇: phpcms如何将访问提示“您要查看的信息不存在或者还未通过审批!”的动态页面设置为伪404
留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏