Autor | Zpráva | ||
---|---|---|---|
evlo Profil |
#1 · Zasláno: 25. 2. 2011, 20:05:32 · Upravil/a: evlo
Snažím se napsat rewrite tak aby přesměroval requesty typu www.stranka.cz/neco nebo stranka.cz/neco na index2.php?page=neco a zároveň requesty co jsou pouze na www.stranka.cz, www.stranka.cz/, stranka.cz nebo stranka.cz/ nechal projít na index.php nebo případně přesměroval na index.php.
Existuje i spousta výjmek, které nechci přesměrovat. Např. Adresáře templates, image nebo soubory s příponou css, png, jpg. Zatím neuspěšně. Poradíte prosím jak na to? Podle mě by to bez vyjmek mělo být pouze takto: RewriteRule ^/(.+)$ /index2.php?page=$1 [L] ale očividně tomu tak není. |
||
Davex Profil |
#2 · Zasláno: 25. 2. 2011, 23:14:20 · Upravil/a: Davex
evlo:
Musí se tam přidat podmínka, aby se nepřepisovaly existující soubory - tím se zabrání i zacyklení přepisu. Pokud bude pravidlo v souboru .htaccess, tak by v regulárním výrazu nemělo být úvodní lomítko. RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^/(.+)$ /index2.php?page=$1 [L] |
||
evlo Profil |
#3 · Zasláno: 25. 2. 2011, 23:37:54
Díky moc, vypadá to, že bez toho lomitka to opravdu funguje tak jak bych chtěl. Musím říct, že jsem to bez lomitka i zkoušel, protože to to tak vyšlo správně podle http://martinmelin.se/rewrite-rule-tester/ (šikovný nástroj), ale chyběla mi tam ta condition. Stále je to pro mě alchimie :)
|
||
Časová prodleva: 13 let
|
0