Autor | Zpráva | ||
---|---|---|---|
Pepan223ER Profil * |
#1 · Zasláno: 25. 10. 2011, 15:56:11
Ahoj, snažím se dát na stránky mod-rewrite pro hezká URL. Vše mi funguje jen se mi nezobrazují obrázky a nenačítají styly. Vím že je to tím, že používám relativní adresování a prohlížeč to hledá v jiné složce. Jak to ale udělat aby to hledal tam kde má, to nevím.
RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^([^/]+)/([^/]+)?/?$ ?pg=$1&id=$2 Jak toto upravit, aby to fungovalo? Předem děkuji za pomoc |
||
Ugo Profil |
#2 · Zasláno: 25. 10. 2011, 16:15:02
ja s mod_rewrite zacal pouzivat tag <base href="http://localhost/">, pripadne absolutni cesty coz je jeste lepsi protoze s base href ma problem nahodnI gEnerator chyb.
|
||
Pepan223ER Profil * |
#3 · Zasláno: 25. 10. 2011, 16:19:34
Ugo:
base už by se neměl používat myslim - mělo by to jít vyřešit přes mod-rewrite |
||
Kajman_ Profil * |
#4 · Zasláno: 25. 10. 2011, 16:31:34
Pepan223ER:
„Vím že je to tím, že používám relativní adresování“ Tak používejte absolutní adresy. Např. <img src="/obrazky/abc.jpg"> http://www.jakpsatweb.cz/server/mod-rewrite.html#cesty |
||
Ugo Profil |
#5 · Zasláno: 25. 10. 2011, 16:33:10
no mel nemel me se nelibi i kdyby to bylo doporuceny, ale je to nejjednodusi zpusob a osobne me nenapada ani naznak toho jak to resit v htaccessu, precijenom ty adresy sou pokazdy jiny, musel bys tam dat podminku ze kdyz ta adresa obsahuje cestu k css tak ji prelozi na spravnou cestu, ale tim by ses pripravil o nekolik rout a zbavil se transparentnosti - ergo to neni reseni. Vicemene mi z principu prijde ze timhle zpusobem to nejde dobre vyresit, jedine zkusit dat cestu od lomitka, to ti zas udela problemy pri behu ve slozce. Takze za me jedine absolutni cesty jako dobry reseni
|
||
Mastodont Profil |
#6 · Zasláno: 25. 10. 2011, 16:39:57
Zkusil jsi
RewriteCond %{REQUEST_FILENAME} !.(jpg|jpeg|png|gif|css)$ |
||
Pepan223ER Profil * |
#7 · Zasláno: 25. 10. 2011, 16:49:47
Mastodont:
nefunguje Ugo: tag BASE nelze použít Kajman_: Nelze použít - již je web nasazen v v redakčním systému |
||
Ugo Profil |
#8 · Zasláno: 25. 10. 2011, 17:08:49
Mastodont:
tuhle podminku tam uz vicemene ma v tom !-f, mozna spis bohuzel protoze cesta by se lip dohledavala v phpku nez v htaccessu, ale opet by platilo omezeni ze s nekterejma routama to bude blbnout. Pepan223ER: v tom pripade ti nezavidim, regular neni kamarad ;) . musis prelozit asd/dsa/styl.css stejne tak jako asd/styl.css a zrovna tak asd/dsa/hgf/fgh/styl.css na jednu adresu, jinymi slovy bych do htaccessu dal neco jako RewriteRule .*/styl.css$ /styl.css :) ale az pridas soubor tak muzes pridavat zaznam .. cili to by byl humus a proto je treba doplnit poddotaz kterej ti dneska spravne nenapisu uz.. neco jako RewriteRule ^.*/([^/].+\.)([a-zA-Z]{2,3})$ /$2/$1 |
||
Pepan223ER Profil * |
#9 · Zasláno: 25. 10. 2011, 17:13:09
Ugo:
mno stále nic :-/ |
||
Ugo Profil |
#10 · Zasláno: 25. 10. 2011, 17:16:12
to je jasny ten regular je spatne od a-Z, jak rikam to neni kamarad :) a jeste tam chybi [L] .. sam sem zvedav jak tohle napsat, doufam ze to nekdo da dokupy nez dojedu domu ;) jinak takhle nejak by to vypadalo kdyby byl ten regular funkcni (a kdo vi, treba nakonec neco i dela :D )
RewriteEngine On RewriteRule ^.*/([^/].+\.)([a-zA-Z]{2,4})$ /$2/$1 [L] RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^([^/]+)/([^/]+)?/?$ ?pg=$1&id=$2 |
||
Pepan223ER Profil * |
#11 · Zasláno: 25. 10. 2011, 18:05:03
tak nějak vůbec žádná změna :-/
|
||
Kajman_ Profil * |
#12 · Zasláno: 25. 10. 2011, 18:50:51
Pepan223ER:
„Nelze použít - již je web nasazen v v redakčním systému“ Tak to je špatný redakční systém a nechte tedy adresy tak, jak byly funkční. |
||
Pepan223ER Profil * |
#13 · Zasláno: 25. 10. 2011, 19:45:35
Kajman:
mno to je možný ale nějaký řešení přes .htaccess musí bejt |
||
Davex Profil |
#14 · Zasláno: 25. 10. 2011, 22:28:48
Pepan223ER:
„nějaký řešení přes .htaccess musí bejt“ Ano je, Ugo ho už zmínil [#8] a souhlasím s ním, že je to humus, ale raději bych volil přesměrování na správnou verzi, aby se úplně nerozbilo kešování a fungovalo to alespoň trochu. Podle čeho server pozná, že má něco poslat odjinud než se po něm chce? Podle něčeho se to musí rozlišit, třeba podle toho, že jsou všechny styly nebo obrázky v konkrétním adresáři. |
||
Pepan223ER Profil * |
#15 · Zasláno: 25. 10. 2011, 22:44:01
Davex:
to znamená, že podle tebe bych měl mít ty složky vytvořený a v tom nahraný všechny styly a všech milion obrázku?? :-D |
||
Pepan223ER Profil * |
#16 · Zasláno: 25. 10. 2011, 22:45:03
když se podívám sem, tak zde je to řešený, ale pro mne je to nefungující
|
||
Davex Profil |
#17 · Zasláno: 25. 10. 2011, 22:58:37
[#15] Pepan223ER:
Server musí podle něčeho v adrese poznat, že to nemá nahrávat ze špatné adresy, kterou poslal prohlížeč, ale má pro to jít jinam. Pokud dáš třeba všechny styly do jednoho adresáře a obrázky do jiného, třeba i do podadresářů, tak by se podle začátku cesty dalo poznat, že se jedná o obrázek a má se pro něj sáhnout někam jinam. Mám pro tebe jednoduchou radu - nepoužívej lomítka v pěkných adresách. |
||
Pepan223ER Profil * |
#18 · Zasláno: 25. 10. 2011, 23:01:25
Davex:
a co bych měl podle tebe používat?? :-D .... hvězdičky?? :-D já nevim - všude je to řešený, na každym webu to funguje (i bez BASE tagu) takže nějaký řešení být musí!! |
||
Davex Profil |
#19 · Zasláno: 25. 10. 2011, 23:11:03
Pepan223ER:
„a co bych měl podle tebe používat?? :-D .... hvězdičky?? :-D“ Místo lomítek nějaký nerezervovaný znak. Třeba tečky nebo čárky? „takže nějaký řešení být musí!!“ Několik rad už jsi dostal. |
||
Pepan223ER Profil * |
#20 · Zasláno: 25. 10. 2011, 23:35:49
Davex:
,,Několik rad už jsi dostal." ale žádný použitelný v praxi! |
||
Davex Profil |
#21 · Zasláno: 26. 10. 2011, 18:10:19
|
||
Časová prodleva: 12 let
|
0