[Opgelost]if statement in .htaccess

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Teun Hesseling

Teun Hesseling

16/04/2013 09:44:24
Quote Anchor link
Is het mogelijk om in .htaccess in een if statement te maken of een file/map bestaat?
Ik heb het nu in de index staan met een header. Als het bestand bestaat wordt je doorgestuurd naar dat bestand. Maar eigenlijk vind ik het niet zo mooi dat het in de index staat. is zoiets dus ook mogelijk in .htaccess?
Gewijzigd op 17/04/2013 11:35:09 door Teun Hesseling
 
PHP hulp

PHP hulp

21/09/2021 19:39:01
 
Bart V B

Bart V B

16/04/2013 10:12:51
Quote Anchor link
Een kleine google zoektocht kwam op dit uit:
http://stackoverflow.com/questions/1234919/can-i-do-an-if-then-else-in-htaccess
Misschien heb je daar wat aan?
 
Willem vp

Willem vp

16/04/2013 10:14:25
Quote Anchor link
<If "-f /pad/naar/bestand.txt"> of <If "-d /pad/naar/map"> zou moeten werken, maar daar zijn wel beperkingen aan.
Zie ook http://httpd.apache.org/docs/2.4/expr.html

En anders zou je met rewrite rules kunnen werken, want in RewriteCond kun je ook testen of een bestand of map al dan niet bestaat.

Toevoeging op 16/04/2013 10:17:17:

Bart V B op 16/04/2013 10:12:51:
Een kleine google zoektocht kwam op dit uit:
http://stackoverflow.com/questions/1234919/can-i-do-an-if-then-else-in-htaccess
Misschien heb je daar wat aan?

Die pagina gaat over het vergelijken van strings/urls en niet over het testen of een bestand bestaat, dus is in deze context minder nuttig.
 
TJVB tvb

TJVB tvb

16/04/2013 10:19:46
Quote Anchor link
Wat wil je precies controleren?
Je kunt in je rewrite regels gewoon controleren of een bestand / map bestaat
 
Teun Hesseling

Teun Hesseling

16/04/2013 10:50:58
Quote Anchor link
het gaat om een config.php bestandje. dat de eerste keer als je naar de website gaat naar doorgestuurd word en aan het einde van de config word het bestand verwijderd zodat je dan gewoon op de index.php komt. dus ik dacht dat zoiets beter in de .htaccess kon dan in index.php zelf.

Toevoeging op 16/04/2013 15:48:24:

Ik ben al een tijd aan het zoeken en knustelen en proberen. maar ik kom er gewoon weg niet uit hoe mijn .htaccess er dan zou uit moeten zien. Tot nu toe heb ik dit
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} /Configuration/config.php$-f [NC,OR]
RewriteCond %{REQUEST_FILENAME} -d [NC]
RewriteRule ^(.*)?$ /Configuration/config.php [L]


dan redirect hij wel naar de config.php.
maar als dus de map/ file niet bestaat gaat hij niet naar index.php maar probeert hij alsnog de file te openen. Wat uiteraard faalt want het bestaat niet.

weet iemand hoe ik nu verder moet?
 
Teun Hesseling

Teun Hesseling

17/04/2013 11:28:40
Quote Anchor link
Nog even hier op terugkomend ik ben uren zoet hier mee geweest maar uiteindelijk toch voor elkaar gekregen doormiddel van de volgende code:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
RewriteEngine on

RewriteCond %{DOCUMENT_ROOT}/Configuration/config.php -f
RewriteCond %{SCRIPT_FILENAME} !/Configuration/config.php
RewriteRule ^.*$ /Configuration/config.php [L]

RewriteCond %{DOCUMENT_ROOT}/Configuration/config.php !-f
RewriteRule ^.*$ index.php [L]


Toevoeging op 17/04/2013 14:19:20:

nog even een kleine toevoeging:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
RewriteCond %{REQUEST_URI} !\.(css|gif|ico|jpg|js|png|swf|txt)$


omdat anders de css en dergelijke niet meer werkt
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.