Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Špatná funkce mod_rewrite

Zdravím,

už jsem hledal docela dlouho, vyzkoušel jsem pár rad, ale žádná neřeší můj problém, tak zkouším zde. Na starém webu mi soubor mod_rewrite fungoval, na novém je problém a nefunguje mi ani na nejjednodušších věcech. Dejme tomu, že chci z test jit na index a mám to zapsané takto:

Options +FollowSymlinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)?$ index.php?skript=$1 [L]

Objeví se chyba 404... Pokud ale udělám malou změnu a pravidlo změním na

RewriteRule ^ok/([^/]+)?$ index.php?skript=$1 [L]

,tak mi test funguje... Tedy hádám, že je chyba jen v zápisu pravidla a věřím, že jde o kravinu, kterou mi pomůžete vyřešit. Pokud je to něco elementárního, tak se omlouvám, zas takové zkušenosti s tím nemám a na starém webu jsem s tímto problém neměl.

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
Je nezmysel robit ([^/]+)? Stejnu funkciu ma snad [^/]* Alebo nechapem co tym chcel autor povedat .…
MM.. 04.08.2015 00:31
MM..
Děkuji za odpověď, s tím otazníkem sem se to kdysi učil, teď si všímám, že se to nepoužívá. Avšak an…
Marty92 04.08.2015 01:05
Marty92
[^/]*$ robi co? bez toho prveho ^
MM.. 04.08.2015 01:09
MM..
Pořád 404... Zkouším různé kombinace, pořád to stejné... Na minulém serveru šlo vše bez problémů, na…
Marty92 04.08.2015 01:25
Marty92
Pripadne skus tie veci uzavret do uvodzoviek preistotu RewriteRule "^([^/]*)$" "index.php?skript=$1"…
MM.. 04.08.2015 01:45
MM..
Zkusil a pořád stejné. Zjišťuji ale jednu zajímavost... Na webu mám vlastní chybovou hlášku pro skri…
Marty92 04.08.2015 02:02
Marty92
Skus si ten adresar nazvat tralala a ne test. Trebars ma server svoj vlastny rewrite na slovo test
MM.. 04.08.2015 09:27
MM..
VYŘEŠENO!!!!!!!!!!!!!! Zkoušel jsem ještě pečlivěji googlit a ještě více zkoušet a stačilo do řádku… poslední
Marty92 04.08.2015 11:47
Marty92

Děkuji za odpověď, s tím otazníkem sem se to kdysi učil, teď si všímám, že se to nepoužívá. Avšak ani tvoje řešení mi nefunguje :( Ono asi nejde o celý výraz, ale jde myslím o ten začátek. Prostě RewriteRule ^x([^/]*)$ index.php?skript=$1 [L] při odkazu xtest funguje (bez těch závorek ne), ale to není to, co bych chtěl :)

Zkusil a pořád stejné. Zjišťuji ale jednu zajímavost... Na webu mám vlastní chybovou hlášku pro skripty, co nejdou načíst a ta se spustí pokud je v url něco, co tam nemám... Třeba pokud mám v adresáři právě soubor test.php, tak test hodí 404, tes, www.neco.testa hodí chybovou hlášku, co tam mám já. Tedy ty pravidla by třeba mohly fungovat, ale chyba by nakonec mohla být jinde :D

Zpět do poradny Odpovědět na původní otázku Nahoru