petak, 21. prosinca 2007.

Custom Error Pages

Creating custom error pages in PHP Fusion is easy. This article shows you how to create a custom 404 'page not found' error page but it can easily be modified to create pages for other ErrorDocument codes.

If have applied the page title optimisation mod your visitor will be presented with an informative page which matches the theme of your site AND which also has a HTML title tag of your choosing.

Step 1: Download the code for 404.php from the CVS Browser (click the disk).

Step 2: Edit and modify 404.php to meet your requirements.

Step 3: Upload 404.php to the root directory of your PHP Fusion installation.

Step 4: Create a .htaccess file if you don't already have one and add the following to it.

## Forbidden
ErrorDocument 404 /404.php

That's it - your done!

To create pages for other ErrorDocument codes: Download 404.php and rename it to whatever error code you have in mind and modify your .htaccess file accordingly. Possible inclusions are:

## Bad Request
ErrorDocument 400 /400.php

## Unauthorized
ErrorDocument 401 /401.php

## Payment Required
ErrorDocument 402 /402.php

## Forbidden
ErrorDocument 403 /403.php

## Not Found
ErrorDocument 404 /404.php

## Server Error
ErrorDocument 500 /500.php

## Bad Gateway
ErrorDocument 502 /502.php

For a more complete list view the HTTP/1.1 Status Code Definitions at

ponedjeljak, 17. prosinca 2007.

This custom error page shows some standard error information and reports the error to the webmaster by e-mail.

/* create a .htaccess file in your root and enter these most common error code definitions

ErrorDocument 400 /error.php?err=400
ErrorDocument 401 /error.php?err=401
ErrorDocument 403 /error.php?err=403
ErrorDocument 404 /error.php?err=404
ErrorDocument 500 /error.php?err=500


// save this code below in file name "error.php"
if (isset($_GET['err'])) {
$errorNum = $_GET['err'];
} else {
$errorNum = "undef. number";

$emailaddress = "";
you have to create this file and enter there all URL's with bad links and
all IP addresses which are hot linking not existing files, example:

$filename = "http://".$_SERVER['HTTP_HOST']."/blocked_ref.txt";

// if the http referer is not empty check the file for exsiting URL's
if (!empty($_SERVER['HTTP_REFERER'])) {
$bad_ref = file ($filename);
$bad_counter = 0;
foreach ($bad_ref as $val) {
if (substr($_SERVER['HTTP_REFERER'], 0, 20) == substr($val, 0, 20)) {
if ($bad_counter > 0) {
header("Location: http://".$_SERVER['HTTP_HOST']);
} else {
$errortime = (date("d M Y h:m:s"));
$message = $errorNum." Error Report\r\n\r\nA ".$errorNum." error was encountered by ".$_SERVER['REMOTE_ADDR'];
$message .= " on $errortime.\r\n\r\n";
$message .= "The URI which generated the error is: \nhttp://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']."\r\n\r\n";
$message .= "The referring page was:\n".$_SERVER['HTTP_REFERER']."\r\n\r\n";
$message .= "The used client was:\n".$_SERVER['HTTP_USER_AGENT']."\r\n\r\n";
$headers = "From: ".$emailaddress."\nDate: ".$errortime." +0100\n";
$subject = "Error: ".$errorNum." from ".$_SERVER['HTTP_REFERER'];
mail($emailaddress, $subject, $message, $headers);
} else { // at last check if there are already some bad IP Addresses
$bad_ref = file ($filename);
$very_bad_counter = 0;
foreach ($bad_ref as $val) {
if (substr($_SERVER['REMOTE_ADDR'], 0, 10) == substr($val, 0, 10)) {
if ($very_bad_counter > 0) {
header("Location:"); // or some other nice URL
// place here the html code you want to show the visitor, like
echo "

Some error...


nedjelja, 9. prosinca 2007.

redirect a visitor to

Here's an example on how to redirect a visitor to


The above example shows how to redirect the visitor to a static address. You can also dynamically create the location to which the visitor is to be redirected.

$redirectstr= $domain.$querystring;
header('Location:'. $redirectstr);

The above code will create the URL for redirection as and then redirect them to the URL. You can also build php code which can conditionally redirect a page. See how this is done in the following example.


Sopranos Ruby Css Xhtml Cgi Calabria Rocky Oktoberfest Fencing