Autor | Zpráva | ||
---|---|---|---|
blizzboz Profil |
#1 · Zasláno: 4. 12. 2009, 19:56:44
potreboval by som z takejto url:
http://www.nieco.sk/sk/názov-stránky pomocou mod rewrite vytvoriť takúto: http://www.nieco.sk/index.php?id=názov-stránky&lang=sk viete mi poradiť regulárny výraz? |
||
Cup Profil |
RewriteRule ^([A-Za-z]+)/([A-Za-z0-9-]+)$ /index.php?id=$2&lang=$1 [L,QSA] |
||
blizzboz Profil |
#3 · Zasláno: 4. 12. 2009, 20:22:41
A funguje to aj s diakritikou? lebo A-Za-z sú len písmená anglickej abecedy
|
||
Cup Profil |
#4 · Zasláno: 4. 12. 2009, 20:35:32
poc by si daval do url diakritiku?
|
||
blizz_boz Profil |
#5 · Zasláno: 4. 12. 2009, 21:41:58
no len tak aby to bolo po slovensky na svojich stránkach bežne používam diaritiku napr.:
http://ipremiere.eu/čo-to-znamená-tfp.html |
||
Joker Profil |
#6 · Zasláno: 4. 12. 2009, 21:57:27
blizzboz:
„A funguje to aj s diakritikou?“ Nefunguje, na diakritiku by bylo potřeba tam ještě vyjmenovat přípustná písmena s diakritikou. |
||
blizz_boz Profil |
#7 · Zasláno: 5. 12. 2009, 01:08:06
takže takto?:
RewriteRule ^([A-Za-z]+)/([A-Za-ZV-9-áÁéÉíÍóÓúÚýÝčČďĎťŤňŇľĽšŠťŤžŽĺĹŕŔäÄôÔŮůěĚřŘ]+)$ /index.php?id=$2&lang=$1 [L,QSA] |
||
blizzboz Profil |
#8 · Zasláno: 5. 12. 2009, 15:00:29
keď som tam dal toto:
RewriteEngine on RewriteRule ^([A-Za-z]+)/([A-Za-z0-9-áÁéÉíÍóÓúÚýÝčČďĎťŤňŇľĽšŠťŤžŽĺĹŕŔäÄôÔŮůěĚřŘ]+)$ /index.php?id=$2&lang=$1 [L,QSA] tak to vyhadzuje Internal Server Error |
||
blizzboz Profil |
#9 · Zasláno: 5. 12. 2009, 16:02:10
no tak som to vyriešil aj sám:
RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^([A-Za-z]+)/(.*)$ index.php?id=$2&lang=$1 [L,QSA] ale teraz mám ďalší problém napr mám obrázok: <img src="images/obrazok.jpeg" width="83" height="63" alt="obrazok"> správne umiestnenie obrázku má byť http://www.nieco.sk/images/obrazok.jpeg predtým to tam aj našlo ale teraz prehliadač hľadá obrázok na adrese: http://www.nieco.sk/sk/images/obrazok.jpeg skúšal som použiť tag base <base href="../"> ale ten nefungoval v IE7 a IE8 viem že sa to dá riešiť cez mod rewrite ale neviem ako potreboval by som aby keď bude prehliadač sťahovať súbor z adresy: adresar/images/obrazok.jpeg aby mu server podstrčil súbor images/obrazok.jpeg ďalšie riešenie by bolo používať absolútne adresy ale to je zbytočne pracné a neflexibilné. |
||
Medvídek Profil |
#10 · Zasláno: 5. 12. 2009, 16:05:03
blizzboz:
A nebude stačit toto: RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d |
||
blizzboz Profil |
#11 · Zasláno: 5. 12. 2009, 16:13:53 · Upravil/a: blizzboz
Medvídek: nestačí to :( to funguje len keď zadáš adresu existujúceho súboru, tak na ten sa nepoužije prepisovanie url napr. zadáš:
http://www.nieco.sk/images/obrazok.jpeg tak sa url neprepíše na: index.php?id=obrazok.jpeg&lang=images ale sa načíta obrázok. |
||
Yur4Y Profil |
#12 · Zasláno: 5. 12. 2009, 16:17:27
A čo tak použiť cestu /images/obrazok.jpeg?
|
||
blizzboz Profil |
#13 · Zasláno: 5. 12. 2009, 16:25:32 · Upravil/a: blizzboz
Yur4Y:
dá sa použiť cesta: ../images/obrazok.jpeg ale to sú zbytočné dve bodky a lomítko navyše, radšej by som to riešil tak že keď server má poslať klientovi obrázok z adresy sk/images/obrazok.jpeg tak mu podstrčí obrázok z adresy images/obrazok.jpeg nedá sa to nejako cez mod_rewrite? |
||
blizzboz Profil |
#14 · Zasláno: 5. 12. 2009, 17:33:41
no tak nakoniec som to prerobil takto:
RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteRule (.*)\(([A-Za-z]+)\)$ index.php?id=$1&lang=$2 [L,QSA] adresa bude mať tvar: http://www.nieco.sk/názov-stránky(sk) v zátvorke bude jazyková mutácia |
||
Časová prodleva: 14 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0