网站跳转出现404怎么办?肯定是想办法把蜘蛛圈住。下面,一起来看教程。
访问404页面时,跳转到某篇文章,蜘蛛遇到404页面时,随机跳转到某一篇正常的文章,这样就不会浪费任何一个蜘蛛。

教程开始

好的,开整。在根目录新建一个 404.php 文件,代码如下。下面我给两套代码,一套是直接跳转,一套是有预加载动画计时跳转。

代码一:直接跳转

<?php 
error_reporting(0); 
header('Content-type:text/html;charset=utf-8');
require_once (dirname(__FILE__).'/include/common.inc.php');
$row = $dsql->GetOne("SELECT id,title FROM `#@__archives` WHERE id>=(SELECT FLOOR( MAX(id) * RAND()) FROM `#@__archives`) ORDER BY RAND() LIMIT 0,1 ");
$result = GetOneArchive($row['id']);
if ($cfg_multi_site == 'Y'){
	$arcurl = $result['arcurl'];
}else{
	$arcurl = $cfg_basehost.$result['arcurl'];
}
$arcurl = str_replace($cfg_basehost.$cfg_basehost,$cfg_basehost, $arcurl);
header('Location: '.$arcurl.'');//直接跳转到文章页
?>

这是直接跳转的代码。

代码二:预加载动画

<?php 
error_reporting(0); 
header('Content-type:text/html;charset=utf-8');
require_once (dirname(__FILE__).'/include/common.inc.php');
$row = $dsql->GetOne("SELECT id,title FROM `#@__archives` WHERE id>=(SELECT FLOOR( MAX(id) * RAND()) FROM `#@__archives`) ORDER BY RAND() LIMIT 0,1 ");
$result = GetOneArchive($row['id']);
if ($cfg_multi_site == 'Y'){
	$arcurl = $result['arcurl'];
}else{
	$arcurl = $cfg_basehost.$result['arcurl'];
}
$arcurl = str_replace($cfg_basehost.$cfg_basehost,$cfg_basehost, $arcurl);
header('Refresh:3;url='.$arcurl.'');//3秒后跳转到文章页
?>
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=0, minimum-scale=1.0, maximum-scale=1.0">
<title>加载中,请稍候...</title>
<style type="text/css">
body{background:#fff}.dqhk{position:fixed;animation:ball-s .5s 0s ease-out;top:-60px;left:0;bottom:0;right:0;display:flex;align-items:center;justify-content:center}.qjdh{transform:scale(1) translateY(-30px)}.qjdh>div:nth-child(2){-webkit-animation-delay:-.4s;animation-delay:-.4s}.qjdh>div:nth-child(3){-webkit-animation-delay:-.2s;animation-delay:-.2s}.qjdh>div{position:absolute;top:0;left:-30px;margin:2px;margin:0;width:15px;width:60px;height:15px;height:60px;border-radius:100%;background-color:#ff3cb2;opacity:0;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation:ball-scale-multiple 1s .5s linear infinite;animation:ball-scale-multiple 1s .5s linear infinite}.lohg{position:fixed;top:60px;left:0;bottom:0;color: #f156b4;animation:ball-s2 .8s cubic-bezier(0.36, 0.29, 0.62, 1.36);right:0;display:flex;align-items:center;justify-content:center;}@-webkit-keyframes ball-scale-multiple{0%{opacity:0;-webkit-transform:scale(0);transform:scale(0)}5%{opacity:1}to{-webkit-transform:scale(1);transform:scale(1)}}@keyframes ball-scale-multiple{0%,to{opacity:0}0%{-webkit-transform:scale(0);transform:scale(0)}5%{opacity:1}to{opacity:0;-webkit-transform:scale(1);transform:scale(1)}}@keyframes ball-s{0%,to{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes ball-s2{0%{opacity:0}30%{opacity:0}to{opacity:1}}
</style>
<script type="text/javascript">
var num = 1;
function Trect() {
    num++;
    document.getElementById("num").innerHTML = num;
}
setInterval("Trect()", 1000);
</script>
</head>
<body>
<div class="dqhk">
  <div class="qjdh">
    <div></div>
    <div></div>
    <div></div>
  </div>
</div>
<div class="lohg">加载中,请稍候...<div id="num">1</div>秒</div>
</body>
</html>

这是加了预加载动画的代码。

设置404页面

在宝塔面板,网站管理,配置文件中

error_page 404 /404.html;

改为

error_page 404 /404.php;

完成了。当然了,你也可以不用改这个,那就是改个伪静态规则。

Apache伪静态规则

RewriteEngine on
RewriteRule ^404.html$ 404.php

如果已经有 RewriteEngine on 的,就不需要 RewriteEngine on 了。

Nginx伪静态规则

rewrite ^/404.html$ /404.php;

完成了。

温馨提示

内容由用户共同创建和维护,并不代表织梦爱好者论坛立场!
建议您独自对内容进行评估,核实并咨询相关的专业人士!

点击登录

您尚未登录,请登录后查看。
如已经登录,请刷新当前页面。
与博客互通,请在《全民博客》登录
如已在博客登录,请刷新当前页面。

1 个回复 | 最后更新于 2024-06-30
snh102
2024-06-30  沙发

有织梦站长问,我只负责出代码,不保证有没有副作用哈。

登录后方可回帖

snh102

DedeCMS织梦网站被挂马的解决方法

织梦安全防护:织梦首页快照被挟持、被篡改被挂码、被入侵后解决办法。 之前说过《 DedeCMS织梦模板的正确使用方法 》可守护你的织梦网站安全。 啊看不懂,啊不会改,啊不会做,小作文太长了,那我就...

DeDeCMS 织梦CMS snh102 • 2024-09-08 • 最后回复来自 snh102
1
snh102

织梦DeDeBIZ栏目列表分页首页与第一页重复的解决方法

在上一篇《 DeDeBIZ假伪静态短链优化织梦教程 》教程中,实现了织梦BIZ的高级玩法,但是由于列表页重复,不得不再次出一篇解决教程。 默认页的名称重复 前置条件: 当后台-系统设置-核心设置- 栏目生成目...

DeDeBIZ 织梦BIZ 织梦列表 snh102 • 2024-07-25
snh102

织梦信息提示框美化带倒计时版

织梦的信息提示框,非常好看但是没有显示时间。比如:稍等一下,这个稍等,都稍等一天了,都还是没有回复。所以,我要给织梦信息提示加个倒计时。 演示效果看 《 织梦开发实现自动发布和自动更新文...

织梦教程 织梦BIZ 织梦CMS snh102 • 2024-07-05 • 最后回复来自 snh102
1
snh102

DeDeBIZ织梦后台首页显示表单数量和留言数量

什么?在DeDeBIZ织梦后台首页,增加统计表单数量和留言数量。好嘛,DeDeBIZ得德的群友真会玩。下面,是在织梦后台首页显示表单数量和留言数量...的操作教程! 统计表单数量 打开 /admin/templets/index.htm 搜索...

织梦开发 织梦自定义表单 织梦表单 snh102 • 15 天前 • 最后回复来自 ruotee
2
snh102

这是一篇测试文章

主要测试下网站功能。 第一段插入代码测试。 !DOCTYPEhtmlhtmlheadmetacharset=UTF-8metaname=viewportcontent=width=device-width,user-scalable=no,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.0metahttp-equiv=X-UA-Compatiblecontent=ie=edgetitle织梦技...

snh102 • 2024-08-08
snh102

DeDeBIZ织梦自动审核文档+织梦自动定时审核生成插件

织梦CMS定时审核生成织梦插件下载。实现挂机、定时、自动、审核、生成文档。 《 织梦自动发布和自动更新文章 》不能像它自动发布、自动更新文档的都不好用。 曾经春哥开发的,春哥开发的必属精品。织...

织梦插件 定时审核 自动更新 snh102 • 2024-07-16 • 最后回复来自 snh102
1
snh102

DeDeBIZ找不到商品模型的解决办法

DeDeBIZ的商品内容模型被人删了,可能是想不到,会有人会用织梦BIZ做商城吧。 废话少说,直接补回来就好了,发布模版那些都还在,只需要后台执行SQL就好了。 教程开始:后台-系统-SQL命令工具-执行 找不到...

内容模型 系统模型 snh102 • 2024-07-17 • 最后回复来自 snh102
5
snh102

DeDeBIZ织梦安装UEditorPlus百度编辑器

UEditor Plus 是基于 UEditor 二次开发的富文本编辑器。 昨天发现的,百度编辑器大有可玩。织梦BIZ的《 DeDeBIZ织梦安装UEditor百度编辑器 》我都是用这个。既然发现了,肯定是需要更新的哈! 演示效果图 和官网...

织梦开发 织梦编辑器 snh102 • 2024-07-14
snh102

DeDeBIZ的外部栏目无法调用的解决办法

有群友说,DeDeBIZ又有BUG君了!channelartlist 无法调用外部栏目。 经检查,被 ispart2 不等于2给过滤了,外部栏目的值就是2啊!下面修复教程附上 教程开始 打开 /system/taglib/channelartlist.lib.php 搜索 ANDispart2AND 改为...

DeDeBIZ DeDeV6 DeDeBIZ漏洞修复 snh102 • 7 天前
snh102

DeDeBIZ织梦更换鼠标滑动拼图验证码

有句话,不知当讲不当讲,但是我还是想说,被恶意刷垃圾留言,那绝对是不存在的呀。如果你被刷,那说明你的网站,做得还是不够安全呀! 下面,是本原创织梦教程,出自本织梦技术论坛,网上若有同款...

DeDeBIZ 织梦开发 织梦表单 snh102 • 29 天前 • 最后回复来自 ruotee
1
snh102

DeDeBIZ一键切换全站动静态织梦插件

玩织梦,在于折腾,那先安装《 全站动静态 》够你折腾啦; 想鼓捣,用户体验,那就是换《 百度编辑器 》主打用户体验; 无论是开发者,或者是使用者,少了它们的话,只是个玩织梦的孩子。 废话少叙,...

织梦插件 snh102 • 2024-07-17 • 最后回复来自 dage999
6
snh102

DeDeBIZ自定义表单伪静态设置教程

自定义表单已改名,再将 diy.php 改为伪静态版。啥都不用改,只加伪静态规则就好啦! Nginx伪静态规则 RewriteEngineonRewriteRule^diy.html$apps/diy.php Apache伪静态规则 rewrite^/diy.html$/apps/diy.php; 你看,TA们是不是,都是...

织梦伪静态 织梦自定义表单 织梦表单 snh102 • 30 天前
snh102

织梦网站禁止入库ASCII码值换为&#XXXX的形式

网站标题,网站内容,转为ASCII码值,比如#XXXX的形式。 这种形式,屡试很爽,确实是有利于收录,也很是有利于排名,但是这种好景不长,欺骗搜索引擎,一旦被举报就回到原点了。 下面,小编教大家修改...

织梦教程 内容过滤 织梦文档 snh102 • 2024-03-15 • 最后回复来自 snh102
1
snh102

织梦修改全站.html文档的默认命名规则

用织梦做的网站,基本都是 .html 文件后缀的,有的站长就在想,怎么样改为其它后缀的形式,下面,小编附上修改方法。 打开 /include/common.inc.php 搜索 $art_shortname=$cfg_df_ext=.html; 改为 $art_shortname=$cfg_df_ext=.sh...

织梦教程 织梦文档 织梦CMS snh102 • 2024-05-17 • 最后回复来自 snh103
5
snh102

DeDeBIZ二级栏目导航高亮BUG修复教程

我没用新版,DeDeBIZ又有BUG了。一句简单的标签,都能整出问题来。解决办法如下; DeDeBIZ在channelartlist中嵌套channel时,子栏目currentstyle高亮无效的解决办法。 这个问题出在 /system/taglib/channel.lib.php 文件中,...

织梦标签 织梦栏目 织梦漏洞修复 snh102 • 22 天前
snh102

DeDeBIZ一键式切换安全调试模式

和《 DeDeBIZ一键式切换安全开发模式 》不一样,安全模式,开发模式,只是后台一些功能的限制,默认它是开启安全模式的。 而这个开发调试模式,开启后,是会有一些php的报错信息提示,这样就可以知道是...

安全模式 开发模式 调试模式 snh102 • 2024-07-24
从白走到黑

织梦怎么删除所有文章让ID从1开始

站长强迫症,让文章让ID从1开始,织梦站长也均是如此。废话少叙,直接上代码。先备份、再操作,以下操作均不可逆转,请提前先备份数据后操作,以免数据库中的小姐姐丢失。 教程开始 1、后台-系统-S...

织梦教程 DeDeCMS DeDeBIZ 从白走到黑 • 2024-03-10 • 最后回复来自 从白走到黑
1
snh102

把织梦安全做到极致的方法

昨天,群友怒斥织梦资源站的织梦模板很垃圾,一不小心就被篡改挂码了。那么,怎么做织梦安全,怎么把织梦程序安全做到极致,有的站长真的是烧香拜佛的求织梦教程。 下面,小编就把织梦安全做到极致...

织梦教程 织梦CMS DeDeCMS snh102 • 2024-05-20 • 最后回复来自 lxvoip
10
snh102

DeDeBIZ织梦检查栏目保存目录是否重复

在DeDeBIZ中,看文件保存目录,可以用 phpMyAdmin 打开 `#@__arctype` 数据库看。 但是呢,又没有安装 phpMyAdmin 时,可以在织梦模板中标签调用查看,调用标签如下 查看栏目保存目录 {dede:channelartlisttypeid=toprow=50}一...

DeDeV6 织梦标签 织梦栏目 snh102 • 23 天前
snh102

DeDeBIZ织梦修改data目录名的方法

最让人发笑的事情,莫过于村里才通网,亦或是使用的DeDeBIZ被DeDeCMS起诉。 在DeDeBIZ程序中,data缓存目录尚未改名。下面,小编教坛友把data目录改名了。 视频教程 看《 织梦CMS内容管理系统:最新织梦安全设...

DeDeBIZ DeDeV6 织梦BIZ snh102 • 2024-08-08
Loading...