Autor | Zpráva | ||
---|---|---|---|
WendaDostalek Profil * |
#1 · Zasláno: 9. 8. 2006, 17:20:17
Dobrý den, potřeboval bych poradit co se týče regulárních výrazů a mod_rewrite...
Mam stránky v adrese localhost/www/nove/stranky/nova-stranka.php index.php i .htaccess jsou v adresáři nove. Aktuální stránku předávám v parametru například index.php?page=nova-stranka Chtěl bych ale, aby se zobrazovala jako www.stranky.cz/nova-stranka .htaccess jsem vytvořil takto: rewriteEngine on RewriteBase /www/ RewriteRule (^.*$) index.php?=$1 Ale to mi nefunguje. Dokázal by mi tu někdo poradit, prosím? Děkuju |
||
Kajman_ Profil * |
#2 · Zasláno: 9. 8. 2006, 17:28:59
Asi se to zacyklí, zkuste třeba přepisovat jen to, kde není v názvu tečka (index.php, obrázky, atp.).
RewriteEngine on RewriteBase /www/nove/ RewriteRule ^([^.]+)$ index.php?=$1 |
||
WendaDostalek Profil * |
#3 · Zasláno: 10. 8. 2006, 07:55:08
Děkuju. Takto to funguje. Snažím se poprat s reg. výrazy, jen nevím, proč tento zápis
RewriteRule ^(.*)$ index.php?=$1 přidá do proměnné "index.php" a ne to, co bych chtěl já, např. nova-stranka |
||
Kajman_ Profil * |
#4 · Zasláno: 10. 8. 2006, 08:48:15
Protože to proběhne desetkrát... poprvé se tam dá nova-stranka, pak devětkrát index.php.
Pokud se něco podstrčí, prochází se pravidla znovu pro novou podobu. No, a problém je v tom, že tomu pravidlu vyhovuje index.php a bude se to přepisovat do té doby, dokud nevyprší vnitřní limit takovýchto přepsání. |
||
Časová prodleva: 1 měsíc
|
|||
WendaDostalek Profil * |
#5 · Zasláno: 21. 9. 2006, 11:35:00
Mohu ještě jeden dotaz? Kajman_ mi pomohl a rewrite_rule funguje tak, jak má. Pokud ale uživatel zadá neexistující adresu, např. adresa.com/nesmysl, tak index.php doběhne až po řádek, kde by se měl includovat inc/nesmysl.php, ten nenajde a vyhodí hlášku:
Warning: main(./inc/nesmysl.php): failed to open stream: No such file or directory in D:\www\index.php on line 159 Warning: main(): Failed opening './inc/nesmysl.php' for inclusion (include_path='.;c:\php\includes') in D:\www\index.php on line 159 Když jsem zkusil tenhle problém vyřešit ErrorDocument 404 /chybovka.html, ale on index.php existuje, takže to nic neřeší... |
||
tiso Profil |
#6 · Zasláno: 21. 9. 2006, 11:40:39
Musíš si ošetriť vkladanie súborov - keď súbor neexistuje vložiť úvod alebo tak nejak...
|
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0