电脑软硬件应用网
当前位置: 电脑软硬件应用网 > 设计学院 > 网络编程 > PHP教程 > 正文
php实现自定义404错误页面并通知管理员的方法
php实现自定义404错误页面并通知管理员的方法
2010-2-21 13:15:55  文/佚名   出处:oncoding   

本文讲一下使用PHP实现网站出现无法访问页面的错误的时候自定义404错误页面,并发通知告诉网管的方法。代码如下:

<?php # 设置 $domain 为你的域名 (注意没有www)  $domain = "oncoding.net"; # 设置URL,注意没有后划线 /  $docroot = "http://oncoding.net"; # 设置错误信息的字体  $fontface = "Verdana"; # 设置404页面的字体大小  $fontsize = "2"; # 设置404页面的背景颜色,缺省是白色  $bgcolor = "#ffffff"; # 设置文字颜色,缺省是黑色  $textcolor = "#000000"; # 使用 $reportlevel 变量来控制是否发信给网管 # 0 = 根本不用发信,嘿,NB的我们怎么会出错呢 # 1 = 只有在页面含有你的DOMAIN NAME时才发信 # 2 = 即使是与我连接出现的断连也发信,有可能是友情站点  $reportlevel = 2; //这种最保险了   $emailaddress = "webmaster@oncoding.net"; //设置收错误信息的邮箱   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设置使用date或mktime函数问…
    分享PHP实现Web系统单点登录的方法
    PHP实用对付IP攻击升级程序改进
    超级有用网站防IP攻击代码详解
    Cannot start session without erro…
    PHP开发应用程序:生成随机字符串的方…
    PHP开发技巧:PHP网站发开实用技巧集…
    详解如何正确配置PHP开发环境
    PHP里实现汉字转区位码的示例代码
    PHP实现列出目录内容与删除目录的内…
    关于45IT | About 45IT | 联系方式 | 版权声明 | 网站导航 |

    Copyright © 2003-2011 45IT. All Rights Reserved 浙ICP备09049068号