Autor | Zpráva | ||
---|---|---|---|
pan.kolouch Profil * |
#1 · Zasláno: 24. 3. 2008, 10:01:04
Používám mod_rewrite na jednoduchém webu, kde přepisuji jen z www.neco.cz/stranka na www.neco.cz/index.php?page=stranka
Při použití toho pravidla dojde i k přepisu relativních cest vedoucích k obrázkům, css apod. Zatím to řeším tak, že pomocí PHP dělám z relativních odkazů absolutní, vše funguje v pohodě, můj dotaz zní, zda nedochází tímto k nějakému zhoršení rychlosti načítání stránek? Myslím tím, jestli není rychlejší na webu přistupovat k css např. ../styles/default.css než http://www.neco.cz/styles/default.css? Nebo je to úplně jedno? Další podotázka je, zda je možnost napsat pravidla mod_rewrite tak, abych mohl relativní cesty používat všude (css, obrázky) a přitom dosáhnout pěkných url? Děkuji. |
||
souki Profil |
#2 · Zasláno: 24. 3. 2008, 10:15:06
Můžeš přece mod_rewrite použít tak, aby nepřepisoval soubory s učitou koncovkou.
Jinak absolutní odkazy bych ti doporučil psát pouze s lomítkem na začátku (/index.php?page=stranka). Efekt je stejný a přitom je to výrazně účelnější |
||
pan.kolouch Profil * |
#3 · Zasláno: 24. 3. 2008, 11:25:15
Problém je v tom, že v tomto nejsem nijak zdatný, v PHP umím nějaké základy, stejně jako jedno pravidlo v mod_rewrite, spíš se zabývám grafikou, ale řekl jsem si, že nějakých pár skriptů pro malé weby si napíšu. Výše uvedené tj. "/index.php?page=stranka" jsem zkoušel, nicméně v .htaccess mám toto pravidlo:
Options +FollowSymLinks RewriteEngine On RewriteRule ^(.*)/$ index.php?page=$1 [L] což mi způsobí, že když dám do prohlížeče např. www.neco.cz/sluzby/ tak se sice načte příslušná stránka, ale změní se mi v hlavičce xhtml cesta k css tak, že se mi před to přidá právě to "sluzby", čímž je cesta neplatná a stránka se načte bez stylů. Je tedy nějaký rozdíl v rychlosti načítání, když přistupuju přes abs. adresu http://www.neco... nebo přes relativní cestu /neco? Případně, pokud mi někdo pomůžete se sestavením pravidel, velmi mi s tím pomůžete, děkuji. |
||
bukaj Profil |
#4 · Zasláno: 24. 3. 2008, 14:36:58 · Upravil/a: bukaj
pan.kolouch
Je tedy nějaký rozdíl v rychlosti načítání, když přistupuju přes abs. adresu http://www.neco... nebo přes relativní cestu /neco? No, krom toho, že /neco není relativní adresa , ale absolutní, stejně jako ta verze s doménou (relativní cesta by byla bez domény a lomítka na začátku, např. je neco), v rychlosti žádný rozdíl nebude. A pro ty pravdila můžeš použít RewriteCond: RewriteCond %{REQUEST_FILENAME} !\.(css|ico|jpe?g|png|gif|js)$ #přepíše vše, co nekončí na .css, .ico, .jpg, .jpeg, .png, .gif, .js RewriteRule ^(.*)/$ index.php?page=$1 [L] |
||
souki Profil |
#5 · Zasláno: 24. 3. 2008, 14:40:12
řešilo se to tady asi před týdnem
|
||
Dranel Profil |
#6 · Zasláno: 24. 3. 2008, 15:13:02
pan.kolouch
Můžeš také napsat toto pravidlo... RewriteRule ^([A-Za-z0-9-]*)$ index.php?page=$1[L] ...a psát si všude adresy a cesty jak chceš. Přepisovat se ti bude jen to, co má v názvu velká/malá písmena a/nebo číslice a/nebo pomlčku. |
||
pan.kolouch Profil * |
#7 · Zasláno: 24. 3. 2008, 17:18:18
díky moc všem . vyzkouším .
|
||
Časová prodleva: 16 let
|
0