Posiadam taką regułkę w htaccess (może da się ją uprościć? - ogólnie chodzi mi o podział działów strony jako drzewo folderów):
RewriteEngine On
RewriteBase /test
RewriteRule ^([0-9a-zA-Z]+)/([0-9a-zA-Z]+)/([0-9a-zA-Z]+)/([0-9a-zA-Z]+)$ /test/index.php?p1=$1&p2=$2&p3=$3&p4=$4 [L]
RewriteRule ^([0-9a-zA-Z]+)/([0-9a-zA-Z]+)/([0-9a-zA-Z]+)$ /test/index.php?p1=$1&p2=$2&p3=$3 [L]
RewriteRule ^([0-9a-zA-Z]+)/([0-9a-zA-Z]+)$ /test/index.php?p1=$1&p2=$2 [L]
RewriteRule ^([0-9a-zA-Z]+)$ /test/index.php?p1=$1 [L]
Oraz plik index.php:
<pre><? var_dump($_GET); ?></pre>
<img src="test.png" />
Teraz podając w przeglądarce adres np:
http://localhost/test/cos
Otrzymuję:
array(1) {
["p1"]=>
string(3) "cos"
}
I obrazek - wszystko ok. Jednakże wpisaniu:
http://localhost/test/cos/wczyms/gdzies/cos
Otrzymuję:
array(4) {
["p1"]=>
string(3) "cos"
["p2"]=>
string(6) "wczyms"
["p3"]=>
string(6) "gdzies"
["p4"]=>
string(3) "cos"
}
I brak obrazka, gdyż przeglądarka chce wczytać go z
http://localhost/test/cos/wczyms/gdzies/test.png
Jak się przed tym niepożądanym działaniem ustrzec? Podejrzewam, że trzeba jakoś z przepisywania wykluczyć obrazki itp, ale jak? Czy też kombinować z doklejaniem do każdego źródła obrazka "../" w zależności od ilości parametrów, ale to jest dość głupie rozwiązanie.