Autor | Zpráva | ||
---|---|---|---|
LastHunter Profil * |
#1 · Zasláno: 11. 2. 2006, 11:17:06
Dobrý den,
snažím se zprovoznit mod_rewrite pro hezčí adresy. Nejdříve to chci zprovoznit na primitivním příkladu, pro ostré nasazení už mám připraven složitější skript. Táákže můj .htaccess v localhost/pretty_url/ vypadá: RewriteEngine on RewriteRule ^(.)$ /pretty_url/index.php?id=$1 Pak když zadám localhost/pretty_url/A, tak můj PHP skript, který má za úkol jen vypsat to "idčko", vypíše "A". Vtip je v tom, že to (.) nahrazuje jeden znak, takže když bych napsal AA, už by to nejelo... Pro libovolný počet znaků by mělo fungovat (.*), Jenomže to nejede!? RewriteEngine on RewriteRule ^(.*)$ /pretty_url/index.php?id=$1 Pak to teda vypadá takhle... Zadám localhost/pretty_url/hahaha a vypíše se mi: index.php Takže se jako $1 předává "index.php". Co s tím? :o) V případě, že .htaccess je v tomto tvaru: RewriteEngine on RewriteRule ^(.*)$ /pretty_url/index.php?id=blabla tak to funguje. Ať zadám localhost/pretty_url/cokoli, vždy se vypíše blabla. Snad vám to v řešení problému pomůže. Já jsem v koncích :( |
||
Peca Profil |
#2 · Zasláno: 11. 2. 2006, 12:27:40
Nechápu, kde se vzal ten index.php, když v adrese vůbec nebyl. Zkus za to pravidlo dát [L]
|
||
LastHunter Profil * |
#3 · Zasláno: 11. 2. 2006, 15:09:01
ee, [L] nic nevyřešil.
index.php - taky netuším. Další "indicie": Když dám pravidlo ve tvaru RewriteRule ^([a-z]*)$ index.php?id=$1, tak mi to taky žere, co napíšu - neomezenej počet malých písmen. Prostě jen neběží (.*), zdá se, že vše ostatní ano :/ |
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0