Om short-urls te gebruiken maak ik gebruik van een .htaccess, dat ziet er als volgt uit.
Ga ik naar een URL die niet bestaat flag ik 'm als 'OK' een handel ik het request in de index.php verder af. Wanneer er naar een URL wordt gesurft die in de directorytree wèl bestaat flag ik 'm als een 403.
Mijn index.php ziet er als volgt uit:
Nadere inspectie van het log-bestand laat het volgende zien:
De gelogde 403 is dus het benaderen van een folder die wel bestaat op de server. Probleem is echter dat .htaccess $l als tekst meestuurt en niet als parameter/var. Heb hier uitgebreid naar gegoogled maar wordt er echt geen steek wijzer van, weet iemand wat hier fout gaat?
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| <Files *.php> Order Deny,Allow Deny from all </Files> <Files index.php> Order Allow,Deny Allow from all </Files> Options -Indexes RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*) index.php?e=OK&q=$1 [L,QSA] ErrorDocument 403 /index.php?e=403&q=$l |
Ga ik naar een URL die niet bestaat flag ik 'm als 'OK' een handel ik het request in de index.php verder af. Wanneer er naar een URL wordt gesurft die in de directorytree wèl bestaat flag ik 'm als een 403.
Mijn index.php ziet er als volgt uit:
PHP:
1
2
3
4
5
| <?PHP if (isset($_GET['q']) && isset($_GET['e'])) { $log = $_GET['e'] . " | " . $_GET['q'] . PHP_EOL; file_put_contents('logs.txt', $log, FILE_APPEND | LOCK_EX); } |
Nadere inspectie van het log-bestand laat het volgende zien:
code:
1
2
| OK | deze/map/bestaat/niet 403 | $l |
De gelogde 403 is dus het benaderen van een folder die wel bestaat op de server. Probleem is echter dat .htaccess $l als tekst meestuurt en niet als parameter/var. Heb hier uitgebreid naar gegoogled maar wordt er echt geen steek wijzer van, weet iemand wat hier fout gaat?
Hoeder van het Noord-Meierijse dialect