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 相关文章推荐
php2html php生成静态页函数
Dec 08 PHP
PHP 伪静态隐藏传递参数名的四种方法
Feb 22 PHP
Cakephp 执行主要流程
Mar 24 PHP
PHP实现模仿socket请求返回页面的方法
Nov 04 PHP
php基于openssl的rsa加密解密示例
Jul 11 PHP
thinkPHP模板算术运算相关函数用法分析
Jul 12 PHP
PHP数据对象PDO操作技巧小结
Sep 27 PHP
PHP如何根据文件头检测文件类型实例代码
Oct 14 PHP
PDO::commit讲解
Jan 27 PHP
PHP进阶学习之垃圾回收机制详解
Jun 18 PHP
tp5.1 框架join方法用法实例分析
May 26 PHP
php中get_object_vars()在数组的实例用法
Feb 22 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
杏林同学录(五)
2006/10/09 PHP
PHP获取文件扩展名的方法实例总结
2017/06/10 PHP
php面向对象重点知识分享
2019/09/27 PHP
window.open()弹出居中的窗口
2007/02/01 Javascript
Save a File Using a File Save Dialog Box
2007/06/18 Javascript
JS启动应用程序的一个简单例子
2008/05/11 Javascript
javascript高亮效果的二种实现方法
2008/09/14 Javascript
Javascript 面向对象 重载
2010/05/13 Javascript
js实现屏蔽默认快捷键调用自定义事件示例
2013/06/18 Javascript
jquery $.each()使用探讨
2013/09/23 Javascript
Javascript基础知识(三)BOM,DOM总结
2014/09/29 Javascript
javascript实现给定半径求出圆的面积
2015/06/26 Javascript
关于不同页面之间实现参数传递的几种方式讨论
2017/02/13 Javascript
js模拟微博发布消息
2017/02/23 Javascript
js简易版购物车功能
2017/06/17 Javascript
基于jquery实现多选下拉列表
2017/08/02 jQuery
JS沙箱模式实例分析
2017/09/04 Javascript
JavaScript实现body内任意节点的自定义属性功能示例
2017/09/18 Javascript
利用JS判断客户端类型你应该知道的四种方法
2017/12/22 Javascript
webstorm中vue语法的支持详解
2018/05/09 Javascript
Nginx设置为Node.js的前端服务器方法总结
2019/03/27 Javascript
[40:03]Liquid vs Optic 2018国际邀请赛淘汰赛BO3 第一场 8.21
2018/08/22 DOTA
跟老齐学Python之开始真正编程
2014/09/12 Python
进一步理解Python中的函数编程
2015/04/13 Python
Python入门学习之字符串与比较运算符
2015/10/12 Python
pycharm下查看python的变量类型和变量内容的方法
2018/06/26 Python
python区块及区块链的开发详解
2019/07/03 Python
对django2.0 关联表的必填on_delete参数的含义解析
2019/08/09 Python
香港时尚女装购物网站:ZAFUL
2017/07/19 全球购物
英国豪华家具和经典家居饰品购物网站:OKA
2020/06/05 全球购物
2014学生会工作总结报告
2014/12/02 职场文书
2015年实习班主任工作总结
2015/04/23 职场文书
中学校园广播稿
2015/08/18 职场文书
2016年大学生社会实践心得体会
2015/10/09 职场文书
python 自动化偷懒的四个实用操作
2021/04/11 Python
浅谈Redis的几个过期策略
2021/05/27 Redis