Adverteren?

Je bent hier: Techzine » Tutorials » Coding » Eigen error pagina's maken

Eigen error pagina's maken

Dinsdag 30 juli 2002 22:24 door Jeroen
Views 6294 Reacties (20)

Eigen error pagina's maken

Het gebeurt toch zeker minimaal 1 keer per dag dat je weer die witte pagina voor je snuf krijgt die zegt “Kan de pagina niet vinden”. Dat is de standaard 404 error pagina, maar je kunt ook je eigen error pagina’s maken. Hierbij kun je mensen bijvoorbeeld automatisch terug sturen naar de index van je website als een pagina niet gevonden kan worden, of als ze geen toegang hebben.

Let op: Dit werkt alleen op Apache webservers!

De errors:
Er zijn verschillende error pagina’s te maken. De meest voorkomende zijn de 404 error van wanneer een pagina niet gevonden kan worden, en de 401 van wanneer je geen toegang tot een pagina hebt. Hieronder vind je een lijst met alle error pagina’s die er zijn en hun betekenis.
• 302 - Redirect
• 400 - Bad Request
• 401 - Authorization Required
• 402 - Payment Required
• 403 - Forbidden
• 404 - File Not Found
• 405 - Method Not Allowed
• 406 - Not Acceptable
• 407 - Proxy Authentication Required
• 408 - Request Time-out
• 409 - Conflict
• 410 - Gone
• 411 - Length Required
• 412 - Precondition Failed
• 413 - Request Entity Too Large
• 414 - Request-URI Too Large
• 415 - Unsupported Media Type
• 500 - Internal Server Error
• 501 - Method Not Implemented
• 502 - Bad Gateway
• 503 - Service Temporarily Unavailable
• 504 - Gateway Time-out
• 505 - HTTP Version Not Supported

.htaccess maken:
Het maken van een .htaccess bestand is heel makkelijk. Open notepad en maak een bestand genaamd htaccess.txt. Vul de volgende dingen in:
PHP Code
1
2
3
4
ErrorDocument 404 /404.html
ErrorDocument 401 /401.html
ErrorDocument 403 /403.html
ErrorDocument 500 /500.html


Verder kun je natuurlijk nog meer error pagina’s maken voor de andere error’s die er zijn. Je hoeft alleen de nummers te veranderen.
Ook kun je in plaats van één html bestand voor elke error, één .php bestand maken voor alle errors. Doe dat als volgt:
PHP Code
1
2
3
4
 ErrorDocument 404 /error.php?page=404
ErrorDocument 401 /error.php?page=401
ErrorDocument 403 /error.php?page=403
ErrorDocument 500 /error.php?page=500


In error.php zet je dan:
PHP Code
1
2
3
4
5
6
7
8
<?php
if($_GET['page']=="404") {
echo "404 error";
}
if($_GET['page']=="401") {
echo "401 error";
}
?>


Upload daarna het bestand naar je webserver en hernoem htaccess.txt naar .htaccess.

Error pagina’s testen:
Als het goed is moeten je zelfgemaakte error pages nu werken. Je kunt dit testen door een foute URL in te typen. Dus bijv. www.jouwdomein.nl/blabla.html. Als het goed is dan verschijnt nu de door jezelf gemaakte foutpagina.

Andere servers:
Mocht jouw webserver niet apache draaien dan moet je maar een hier kijken. Daar wordt het uitgelegd voor vele andere servers.

Er zijn 20 reacties

Avatar
Goed stukje!

Duidelijk en overzichtelijk, straight to tha point.
Heb wel eens anders gezien, verdeeld over een stuk of 5 pagina's, om dit zo uit te leggen!
Ook tnx voor die lijst errors, die had ik nog niet zo compleet, eigenlijk ook nooit naar gezocht, maar toch :)
Avatar
Very handig dit maar het kan ook in de config file van apache. maar maakt niet uit:D
Avatar
het plaatje komt me bekend voor.... :D
Geen Avatar
ennuh next een tutorial voor de mensen die niets met php kunnen om een mooie error pages te maken??? :D
Avatar
Dit is een zeer handige tutorial maar je werkt in je php script met ifjes.. waarom niet gewoon met een switch functie?
Avatar

Quote:

Op 08-01-03 15:10 schreef Webgnome:
Dit is een zeer handige tutorial maar je werkt in je php script met ifjes.. waarom niet gewoon met een switch functie?
ach wat maakt die 0.0001 sec uit bij zo'n scriptje. Ifjes zijn makkelijker te begrijpen voor de meeste mensen.
Avatar
dat wel maar een stukje langer (qua code) dan een simpele switch

er zijn meerdere wegen die naar rome leiden
Geen Avatar
Geen Avatar
Ok
Ik snap alles wel
mor toch werkt et nie en blijf ik die error-page van Apache zien:??
(en ja, ik heb allowoverride op All gezet)
Avatar
ff lekker gekopieerd van lycos ;)
Geen Avatar
Blijkt nu wel dat et niet werkt zeker
Ik dacht eerst dat er iets mis was met mijn server
bleek dat ik allowoverride op &quot;ALL&quot; moest zetten
ik da dus doen
maar dan krijg ik bij ELKE pagine die ik opvraag error 500
kan er hier iemand helpen ???
(WELKE allowoverride moet ik in godsnaam op All zetten ???)
Geen Avatar
ik neem aan deze Allowoverride

#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be &quot;All&quot;, &quot;None&quot;, or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
AllowOverride All
Avatar
Denk eraan als je een errorpage maakt, dat het een bepaalde grootte moet hebben, anders laat IE het namelijk niet zien...
Avatar
Bij mij werkt het niet op lycos?
moet je hier nog iets speciaal voor doen of niet?
Avatar

Quote:

Op 06-04-04 13:14 schreef hopke:
Bij mij werkt het niet op lycos?
moet je hier nog iets speciaal voor doen of niet?


Lycos ondersteunt geen .htaccess, dus dit gaat zowieso niet op lycos :)
Avatar
ah, bedankt, maar als ik die htaccess op lycos plaats, gaat hij niet meer de standaard foutmelding pagina van lycos nemen, maar de gewone algemene pagina
Geen Avatar
Der zit een foutje in het voorbeeld van je stukje php...

Het moet als volgt zijn
PHP Code
1
2
3
4
5
6
7
8
9
10
11
 
&lt;?
if($page == '302') {
   echo 'Error 302';
}
elseif ($page == '404') {
   echo 'Error 404';
}
else {
echo 'Alles gaat goed';
}?&gt;

als je bijv 10 errors wilt afhandelen moet je 1 if hebben en 9 elseif en nog een else voor als er niets is geselecteerd.

Zelf doe ik het nog iets makkelijker om moeite te besparen:
PHP Code
1
2
3
4
5
6
7
8
9
 
&lt;?
if($page) {
  echo 'Error $page';
}
else {
echo 'Er is geen fout';
}
 


Maar verder is deze tuto handig... ik gebruik nu ook .htacces er werkt goed :)

Sick-guy heeft dit bericht gewijzigd op 16-06-2004 om 15:21.
Avatar
offlineMaks, ICT-directeur, 19 Aug 2004, 17:36
1
Lycos heeft het veel handiger: http://www.tripod.lycos.nl/build/goodies/404/ , staat alles duidelijk uitgelegd.

BTW. Super mooie tutorial hoor 8)
Geen Avatar
Goede tut! ik heb hem gebruikt! en het werkt mooi genoeg
tnx :)
Geen Avatar
.htaccess is heel eenvoudig via dreamweaver te maken je kan hem dan ook gemakkelijk opslaan in windows (je krijgt dan geen error)
Reageer op dit artikel

Gelieve je te houden aan de algemene fatsoensnormen bij het reageren op Techzine. Goede en slechtereacties hebben invloed op je hoeveelheid punten.Tevens zal de redactie actie ondernemen tegen herhaaldelijke slechte reacties.Eventuele fouten in dit artikel kunnen via de article reportgemeld worden.

TZML Toolbar:
kleiner groter resize bold italic underline strike sub sup ul ol quote split url url me
Smilies:
:) :( :o :D ;) :P :p (lol) :@ :\'( ;{ :? :s :9
captcha
Verzenden: