php 404错误页面实现代码


Posted in PHP onJune 22, 2009
<?php 
# 设置 $domain 为你的域名 (注意没有www) 
$domain = "3water.com"; 
# 设置URL,注意没有后划线 / 
$docroot = "http://3water.com"; 
# 设置错误信息的字体 
$fontface = "Verdana"; 
# 设置404页面的字体大小 
$fontsize = "2"; 
# 设置404页面的背景颜色,缺省是白色 
$bgcolor = "#ffffff"; 
# 设置文字颜色,缺省是黑色 
$textcolor = "#000000"; 
# 使用 $reportlevel 变量来控制是否发信给网管 
# 0 = 根本不用发信,嘿,NB的我们怎么会出错呢 
# 1 = 只有在页面含有你的DOMAIN NAME时才发信 
# 2 = 即使是与我连接出现的断连也发信,有可能是友情站点 
$reportlevel = 2; //这种最保险了 
$emailaddress = "webmaster@3water.com"; //设置收错误信息的邮箱 
function print_details() 
{ 
# Request access to the global variables we need 
global $fontface, $fontsize, $docroot, $REQUEST_URI, $reportlevel; 
global $bgcolor, $textcolor; 
# Print the 404 error in web format 
echo "<html><head><title>404 没有找到页面</title></head>"; 
echo "<body bgcolor="$bgcolor" text="$textcolor">"; 
echo "<b><h1>404 对不起,我没有找到您要求的页面</h1></b>"; 
echo "<p><font face="$fontface" size="$fontsize">"; 
echo "oncoding编码营提醒您,您要求的页面 $docroot$REQUEST_URI, doesn't exist"; 
echo " on this server.</font></p>"; 
if ($reportlevel != 0) 
{ 
echo "<p><font face="$fontface" size="$fontsize">"; 
echo "错误信息已经发送到oncoding编码营管理员信箱."; 
} 
return; 
} 
# EMAIL处理函数 
function send_email() 
{ 
# Request access to the global variables we need 
global $REQUEST_URI, $HTTP_REFERER, $emailaddress, $REMOTE_ADDR, $docroot; 
# 定制发送的消息,如时间地点等. 
$today = getdate(); 
$month = $today[mon]; 
$mday = $today[mday]; 
$year = $today[year]; 
$hours = $today[hours]; 
$minutes = $today[minutes]; 
$errortime = "$month/$mday/$year at $hours:$minutes"; 
# Create the body of the email message 
$message .= "404 Error ReportnnA 404 error was encountered by $REMOTE_ADDR"; 
$message .= " on $errortime.nn"; 
$message .= "The URI which generated the error is: n$docroot$REQUEST_URInn"; 
$message .= "The referring page was:n$HTTP_REFERERnn"; 
# Send the mail message. This assumes mail() will work on your system! 
mail("$emailaddress", "404 Error Report", $message, "From: $emailaddress"); //发送信息 
return; 
} 
# 下面这些是根据变量$reportlevel的设置来发信与否。 
print_details(); 
# See whether or not we should send an email report. If so, do it. 
if ($reportlevel != 0) 
if ($reportlevel == 1) { 
if (eregi($domain,$HTTP_REFERER)) 
send_email(); } 
else 
send_email(); 
# All done! 
exit; 
?>
PHP 相关文章推荐
PHP脚本的10个技巧(5)
Oct 09 PHP
一道关于php变量引用的面试题
Aug 08 PHP
无法在发生错误时创建会话,请检查 PHP 或网站服务器日志,并正确配置 PHP 安装(win+linux)
May 05 PHP
Apache实现Web Server负载均衡详解(不考虑Session版)
Jul 05 PHP
php检测iis环境是否支持htaccess的方法
Feb 18 PHP
四种php中webservice实现的简单架构方法及实例
Feb 03 PHP
php实现微信公众号无限群发
Oct 11 PHP
编写PHP脚本清除WordPress头部冗余代码的方法讲解
Mar 01 PHP
php通过会话控制实现身份验证实例
Oct 18 PHP
PHP处理Ajax请求与Ajax跨域问题
Feb 13 PHP
thinkPHP5.0框架引入Traits功能实例分析
Mar 18 PHP
TP5框架实现自定义分页样式的方法示例
Apr 05 PHP
PHP 多进程 解决难题
Jun 22 #PHP
PHP 高级课程笔记 面向对象
Jun 21 #PHP
mysql 性能的检查和优化方法
Jun 21 #PHP
php fckeditor 调用的函数
Jun 21 #PHP
学习discuz php 引入文件的方法DISCUZ_ROOT
Jun 21 #PHP
php 分页函数multi() discuz
Jun 21 #PHP
一个php Mysql类 可以参考学习熟悉下
Jun 21 #PHP
You might like
全国FM电台频率大全 - 15 山东省
2020/03/11 无线电
[EPIC] Larva vs Flash ZvT @ Crossing Field [2017-10-09]
2020/03/17 星际争霸
php使用fgetcsv读取csv文件出现乱码的解决方法
2014/11/08 PHP
有关PHP 中 config.m4 的探索
2020/08/26 PHP
window.location.href中url中数据量太大时的解决方法
2013/12/23 Javascript
Linux下使用jq友好的打印JSON技巧分享
2014/11/18 Javascript
node.js中的fs.chownSync方法使用说明
2014/12/16 Javascript
javascript使用for循环批量注册的事件不能正确获取索引值的解决方法
2014/12/20 Javascript
js解决movebox移动问题
2016/03/29 Javascript
JS读取XML文件数据并以table形式显示数据的方法(兼容IE与火狐)
2016/06/02 Javascript
JavaScript Promise 用法
2016/06/14 Javascript
jQuery模仿单选按钮选中效果
2016/06/24 Javascript
jQuery+css实现非常漂亮的水平导航菜单效果
2016/07/27 Javascript
深入理解jQuery3.0的domManip函数
2016/09/01 Javascript
AngularJS动态添加数据并删除的实例
2018/02/27 Javascript
Vue数据双向绑定原理实例解析
2020/05/15 Javascript
Python验证企业工商注册码
2015/10/25 Python
结合Python的SimpleHTTPServer源码来解析socket通信
2016/06/27 Python
python抓取并保存html页面时乱码问题的解决方法
2016/07/01 Python
Python 中开发pattern的string模板(template) 实例详解
2017/04/01 Python
Python采集代理ip并判断是否可用和定时更新的方法
2018/05/07 Python
python可视化实现KNN算法
2019/10/16 Python
Python实现线性判别分析(LDA)的MATLAB方式
2019/12/09 Python
python绘制雪景图
2019/12/16 Python
基于Python的接口自动化读写excel文件的方法
2021/01/15 Python
canvas简易绘图的实现(海绵宝宝篇)
2018/07/04 HTML / CSS
澳大利亚家庭花园和DIY工具网店:VidaXL
2019/05/03 全球购物
新奥尔良珠宝:Mignon Faget
2020/11/23 全球购物
大学生求职自我评价
2014/01/16 职场文书
信息技术专业大学生职业生涯规划书
2014/01/24 职场文书
终止劳动合同协议书
2014/10/05 职场文书
教导主任个人总结
2015/03/03 职场文书
2015最新民情日记范文
2015/06/26 职场文书
2015双创工作总结
2015/07/24 职场文书
初中地理教学反思
2016/02/19 职场文书
2016年“6.26”禁毒宣传月系列活动总结
2016/04/05 职场文书