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 相关文章推荐
模拟OICQ的实现思路和核心程序(二)
Oct 09 PHP
PHP 和 MySQL 开发的 8 个技巧
Jan 02 PHP
php zend解密软件绿色版测试可用
Apr 14 PHP
PHP通用分页类page.php[仿google分页]
Aug 31 PHP
UCenter Home二次开发指南
May 28 PHP
PHP Undefined index报错的修复方法
Jul 17 PHP
php获取淘宝分类id示例
Jan 16 PHP
php实现的支持断点续传的文件下载类
Sep 23 PHP
深入理解PHP中的Streams工具
Jul 03 PHP
swoole和websocket简单聊天室开发
Nov 18 PHP
PHP数组式访问接口ArrayAccess用法分析
Dec 28 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
php实现的click captcha点击验证码类实例
2014/09/23 PHP
双冒号 ::在PHP中的使用情况
2015/11/05 PHP
php网页版聊天软件实现代码
2016/08/12 PHP
PHPExcel实现表格导出功能示例【带有多个工作sheet】
2018/06/13 PHP
一个js实现的所谓的滑动门
2007/05/23 Javascript
JQuery 确定css方框模型(盒模型Box Model)
2010/01/22 Javascript
基于jQuery的淡入淡出可自动切换的幻灯插件
2010/08/24 Javascript
在js文件中如何获取basePath处理js路径问题
2013/07/10 Javascript
深入领悟JavaScript中的面向对象
2013/11/18 Javascript
使用JQUERY进行后台页面布局控制DIV实现左右式
2014/01/07 Javascript
JS版的date函数(和PHP的date函数一样)
2014/05/12 Javascript
express的中间件cookieParser详解
2014/12/04 Javascript
node.js中的http.response.setHeader方法使用说明
2014/12/14 Javascript
了解VUE的render函数的使用
2017/06/08 Javascript
说说如何利用 Node.js 代理解决跨域问题
2019/04/22 Javascript
[42:22]DOTA2上海特级锦标赛C组小组赛#1 OG VS Archon第一局
2016/02/27 DOTA
Python实现遍历数据库并获取key的值
2015/05/17 Python
简单了解Django模板的使用
2017/12/20 Python
对Python3+gdal 读取tiff格式数据的实例讲解
2018/12/04 Python
Python使用lambda抛出异常实现方法解析
2020/08/20 Python
谈谈python垃圾回收机制
2020/09/27 Python
python eventlet绿化和patch原理
2020/11/21 Python
介绍一下HTTP、HTTPS和SSL
2012/12/16 面试题
为什么需要版本控制
2016/10/28 面试题
法律工作求职自荐信
2013/10/31 职场文书
给朋友的道歉信
2014/01/09 职场文书
小学生期末评语
2014/04/21 职场文书
电子商务求职信
2014/06/15 职场文书
语文教育专业求职信
2014/06/28 职场文书
赔偿协议书范本
2014/09/12 职场文书
中级会计大学生职业生涯规划书
2014/09/16 职场文书
公司授权委托书
2014/10/17 职场文书
2014离婚协议书范文(3篇)
2014/11/29 职场文书
优秀新员工事迹材料
2019/05/13 职场文书
SQL Server连接查询的实用教程
2021/04/07 SQL Server
JavaWeb 入门篇:创建Web项目,Idea配置tomcat
2021/07/16 Java/Android