Autor | Zpráva | ||
---|---|---|---|
Jan Onesork Profil |
#1 · Zasláno: 5. 10. 2005, 14:46:13
Dobrý den,
přes mod_rewrite potřebuji přesměrovávat z example.com/kategorie/ na example.com/?kategorie V .htaccess mám toto: RewriteEngine on RewriteRule ^(.*)/$ /?$1 [L,QSA] to ale funguje pouze, když do příznaku na konci přidám přesměrování -> tedy [L,QSA,R=301] - tím se mi ale změní url v adresním řádku a to nechci. Kde tedy může být chyba, že to s R=301 funguje? |
||
Kajman Profil * |
#2 · Zasláno: 5. 10. 2005, 15:37:46
Problém bude asi v tom, že nemáte definovaný soubor, na který se to má tajně přepsat.
Osobně bych použil RewriteEngine on RewriteBase / RewriteRule ^(.*)/$ index.php?$1 [L,QSA] Ale projde všechno, co má na konci lomítko. Možná by stálo za to, otestovat, zda takový adresář opravdu neexistuje a přepisovat jen takové adresy, kde je lomítko jen na konci a ne někde uvnitř ve složitější cestě. |
||
Jan Onesork Profil |
#3 · Zasláno: 5. 10. 2005, 16:35:09
To mi taky nefunguje. No, budu hledat dál.
|
||
Kajman Profil * |
#4 · Zasláno: 5. 10. 2005, 19:41:50
Tak jsem to zkoušel a ten soubor tam být nemusí. Pravidla jsou ok, problém bude někde jinde. Spíš bych problém hledal v nastavení php.
Co to vyplivne, když to nefunguje? |
||
Jan Onesork Profil |
#5 · Zasláno: 5. 10. 2005, 19:49:31
Zkoušel jsem různá pravidla a jejich různé variace - většinou to házelo 404 nebo 500 - internal server error.
Nakonec jsem to vyřešil oklikou - přidal jsem to toho prefix a najednou to funguje - musím tedy mít např. example.com/nejaky-prefix/kategorie/subkatogorie -> a to mi jde na example.com/index.php?page=kategorie/subkategorie Když ale z pravidla ten prefix odstraním, tak to okamžítě přestane fungovat - 404 (hledá to přímo volanou adresu - nepřesměrovává). |
||
Kajman Profil * |
#6 · Zasláno: 5. 10. 2005, 21:46:32
500 bývá způsobeno špatnou syntaxí pravidel v .htaccess. A to 404 vám vypíše jakou adresu to nemůže najít, ne? Je tam napsán index.php v DocumentRoot?
|
||
Kajman Profil * |
#7 · Zasláno: 5. 10. 2005, 21:47:25
A někdy s modem rewrite zlobívají starší verze php.
|
||
Jan Onesork Profil |
#8 · Zasláno: 5. 10. 2005, 22:04:32
A to 404 vám vypíše jakou adresu to nemůže najít, ne?
No jistě, tu co zadávám do adresního řádku. Už to asi nechám takhle - s tím prefixem. Děkuji. |
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0