複製代碼 代碼如下:<?php
# 設定 $domain 為你的網域名稱 (注意沒有www)
$domain = "jb51.net";
# 設定URL,注意沒有後劃線 /
$docroot = "http://jb51.net";
# 設定錯誤資訊的字型
$fontface = "Verdana";
# 設定404頁面的字型大小
$fontsize = "2";
# 設定404頁面的背景顏色,預設是白色
$bgcolor = "#ffffff";
# 設定文字顏色,預設是黑色
$textcolor = "#000000";
# 使用 $reportlevel 變數來控制是否發信給網管
# 0 = 根本不用發信,嘿,NB的我們怎麼會出錯呢
# 1 = 只有在頁面含有你的DOMAIN NAME時才發信
# 2 = 即使是與我串連出現的斷連也發信,有可能是友情網站
$reportlevel = 2; //這種最保險了
$emailaddress = "webmaster@jb51.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;
?>