Home  >  Article  >  Backend Development  >  Create a 404 error page and send it to the administrator

Create a 404 error page and send it to the administrator

WBOY
WBOYOriginal
2016-08-08 09:33:46751browse

# Set $domain to your domain name (note there is no www)
$domain = "oso.com.cn";
# Set URL, note there is no trailing underscore /
$docroot = "http://www.oso.com.cn";
# Set the font of error message
$fontface = "Verdana";
# Set the font size of the 404 page
$fontsize = "2";
# Set the background color of the 404 page, the default is white
$bgcolor = "#ffffff";
# Set the text color, the default is black
$textcolor = "#000000";

# Use the $reportlevel variable to control whether to send a letter to the network administrator
# 0 = No need to send a message at all, hey, how could teaman go wrong
# 1 = Only send emails if the page contains your DOMAIN NAME
# 2 = Send messages even if the connection with me is disconnected, it may be a friendly site
$reportlevel = 2; //This is the safest

$emailaddress = "webmaster@oso.com.cn"; //Set the email address for receiving error messages


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 "404 Page not found";
echo "";
echo "

404 Sorry, I did not find the page you requested

";
echo "

";
echo "Oso Network Administrator reminds you that the page you requested, $docroot$REQUEST_URI, doesn't exist";
echo " on this server.

";

if ($reportlevel != 0)
{
echo "

";
echo "The error message has been sent to the Oso network administrator.";
}

Return;
}


#EMAIL processing function

function send_email()
{
# Request access to the global variables we need
global $REQUEST_URI, $HTTP_REFERER, $emailaddress, $REMOTE_ADDR, $docroot;

# Customize the messages sent, such as time and location, etc.
$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"); //Okay, send the letter

Return;
}


# The following are based on the setting of the variable $reportlevel to send or not.
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;

?>

The above introduces how to create a 404 error page and send a letter to the administrator, including the relevant content. I hope it will be helpful to friends who are interested in PHP tutorials.

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn