Goedemorgen PHPHulp,

Ik heb een script gevonden als een map niet is gevonden of geen inhoud heeft dat hij de homepagina include:

# Not found include mine page
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

Maar nu heb ik de vraag of er een code bestaat dat php weet dat het niet de homepagina is en dan een warning message geeft (zelf al gevonden).
Alvast bedankt,
Tim
[update]
Spellingsfout eruit gehaald.
[/code]
Dus ik moet $_SERVER['REQUEST_URI'] met een match doen?
Als de url:domain.com klopt met de gevraagde url: domain.com dan de homepagina erin zetten en dan een else met een errorbox erin?
Dit kun je zo doen, echter bevat REQUEST_URI geen domeinnaam, maar alleen een relatieve verwijzing. Dus een controle of deze niet "/" is zou moeten volstaan.
@Tim, misschien realiseer je je niet helemaal wat de .htaccess regels doen. Hiermee neem je zelf de taak voor jouw rekening, die normaal door de webserver wordt vervuld, om te bepalen of een pagina "bestaat". Je zet daarmee de schakelaar om naar "handmatig".

Als je daar allemaal geen zin in hebt dan kun je via .htaccess (of wellicht het beheerpaneel van je webaccount) in plaats van het bovenstaande ook een ErrorDocument instellen bij de HTTP status code 404 (de welbekende Pagina Niet Gevonden boodschap). Deze zou je ook naar de homepage kunnen verwijzen.

Maar misschien wil je je bezoeker er toch (expliciet) op wijzen dat de pagina die zij probeerden op te vragen niet gevonden kon worden in plaats van simpelweg de homepage te tonen. Dit laatste kan namelijk voor verwarring zorgen.

Denk even goed na over wat je wilt doen, en of dat wel hout snijdt.
@Thomas, ik heb er beslist voor gekozen om geen echte 404 pagina te tonen.
Ik maak namelijk een spel en daar kunnen nog wel eens wat bugs inzitten (best veel ;P) en als ik dan via 404.php de homepagina include dan komen er soms nog wat fouten bijkomen (ervaring).
Aangezien ik liever op 1 pagina blijf (include en require_once e.d.(met behulp van jQuery en JavaScript)).
En ook weet ik dat als je dingen include je er de server voor kunt zetten met PHP.
Maar ik hou het er liever op dat gene wat hierboven staat.
Misschien is dit al te ver gezocht en kan dit ook (link -> https://css-tricks.com/snippets/php/error-page-to-handle-all-errors/)
Dus je gaat ook je statische content door PHP pompen? Klinkt niet als erg verstandig.
Ben van Velzen op 31/01/2016 22:05:45

Dus je gaat ook je statische content door PHP pompen? Klinkt niet als erg verstandig.


alleen de niet aanwezige content toch? Er zijn 2 rewriteCond voor de rule
Gezien zijn overige commentaar word ik een beetje huiverig, vandaar.

Reageren