Vraag & Antwoord

Servers

apache: errordocument wordt niet goed weergegeven

Anoniem
Rob van Esch
6 antwoorden
  • Ik draai een apache webserver op de localhost, dit moet binnenkort een publieke server worden waarop een website komt die voor iedereen te bekijken is. Als er een 'broken-link' is, of er wordt een aanvraag gedaan naar een verkeerde pagina, of er treedt een willekeurige andere fout op, dan wil ik dat de gebruiker duidelijk maken. Daarom heb ik wat error-documenten geschreven. Met het errordocument statement in apache wil ik als er bijvoorbeeld een 404 fout optreedt de pagina error404.php laten verschijnen. Deze pagina verschijnt alleen als ik in internet explorer de gebruiksvriendelijk http foutberichten uit zet. Hoe kan ik deze pagina toch weergeven zonder die optie uit te zetten, want deze optie staat geloof ik standaard aan en dan heeft dus het geen nut om zo'n pagina te maken. Bovendien heb ik sites gezien waarbij de errorpagina wel verschijnt als er een 404 of 500 fout optreed. Wat zie ik over het hoofd??

    Alvast bedankt
    Rob

    [ Dit bericht is bewerkt door: Rob van Esch op 2002-05-15 14:00 ]
  • Hoe ziet je configuratie van die error-documenten eruit (of in .htaccess of in de httpd.conf)?

    En graag alleen dat gedeelte en niet de complete config :wink:
  • Hier is de code zoals die in de http.conf staat:


    [quote:5f6a0663ad]Alias /errordocs/ "C:/phpdev3/error/"
    <Directory "C:/phpdev3/error">


    Options Indexes FollowSymLinks MultiViews Includes


    AllowOverride All

    AddType text/html .shtml
    AddHandler server-parsed .shtml

    </Directory>


    # 400 Bad request
    ErrorDocument 400 /errordocs/error400.html
    # 401 Authorization Required
    ErrorDocument 401 /errordocs/error401.html
    # 403 Forbidden
    ErrorDocument 403 /errordocs/error403.html
    # 404 Not Found
    ErrorDocument 404 /errordocs/error404.html
    # 500 Internal Server error
    ErrorDocument 500 /errordocs/error500.html
    [/quote:5f6a0663ad]

    Voor de duidelijkheid: de errordirectory ligt buiten de webroot, ook als deze directory erin ligt doet ie het niet goed
  • Uit de manual:

    [quote:a7b5cea2f7]Note that if you include a trailing / on the url-path then the server will require a trailing / in order to expand the alias. That is, if you use Alias /icons/ /usr/local/apache/icons/ then the url /icons will not be aliased.[/quote:a7b5cea2f7]

    Dus probeer eens:
    [code:1:a7b5cea2f7]Alias /errordocs C:/phpdev3/error[/code:1:a7b5cea2f7]
  • Helaas, ook dit werkt niet, heb zelfs heel de directory configuratie weg gehaald, ik kom er echt niet uit. Alleen als ik de gebruiksvriendelijke http foutberichten in IE(5.5) uit zet, krijg ik de errordocumenten te zien. Het lijkt me dat apache iets verstuurt naar de browser een http 404 foutmelding waardoor IE zijn eigenfoutmelding laat zien. Weet iemand hoe ik dit uit kan schakelen in apache?
    Alvast bedankt
    Rob
  • Kan je niet beter gewoon heel die Alias weglaten en de errordocumenten compleet met path aanroepen?

    Dus zoiets als:

    [code:1:59384d7bc1]# 400 Bad request
    ErrorDocument 400 c:/phpdev3/error/error400.html[/code:1:59384d7bc1]

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.