View previous topic :: View next topic |
Author |
Message |
unLog!c
Joined: 27 May 2004 Posts: 185 Location: Osijek
|
|
Back to top |
|
|
Sulien
Joined: 04 Jan 2004 Posts: 2905 Location: Zagreb
|
Posted: 04.04.2005 23:41 Post subject: |
|
|
ah gle, morat ćeš naučiti regexpe za mod_rewrite... makar su patterni full jednostavni za ovo što trebaš
onako okvirno:
Code: | RewriteEngine on
RewriteBase /
RewriteRule ^/([0-9]+)/([0-9]+)/?$ index.php?file=$1&display=$2 [L]
|
Ovo će rewritati samo za brojeve. URL "/A/" neće rewritati, kako si i htio |
|
|
Back to top |
|
|
unLog!c
Joined: 27 May 2004 Posts: 185 Location: Osijek
|
Posted: 05.04.2005 08:28 Post subject: |
|
|
Aha, kontam, ali nisam ti onda dobro postavio pitanje za ovo drugo, ako ja radim site gdje neće biti samo brojevi već će biti i tekst, kako onda napravim da mi neki pravi folder neshvati kao vrijednost za varijablu?
evo pokušao sam, ali imam problem sa upitnikom, ne ispiše mi ga kao ? nego kao "%3f" šta sada?? |
_________________ Why dont you go out and play hide and go fuck your self like all other NORMAL kids? |
|
Back to top |
|
|
xpi
Joined: 21 Jan 2004 Posts: 33
|
Posted: 05.04.2005 10:52 Post subject: |
|
|
Stribor wrote: | ako ja radim site gdje neće biti samo brojevi već će biti i tekst, kako onda napravim da mi neki pravi folder neshvati kao vrijednost za varijablu? |
Već si to napravio: kad napišeš izraz [0-9]+, time si postavio uvjet "jedna znamenka ili više njih". Dakle, samo ti brojevi podliježu tom pravilu, nikakav tekst neće upasti. |
|
|
Back to top |
|
|
xpi
Joined: 21 Jan 2004 Posts: 33
|
Posted: 05.04.2005 10:54 Post subject: |
|
|
Stribor wrote: | evo pokušao sam, ali imam problem sa upitnikom, ne ispiše mi ga kao ? nego kao "%3f" šta sada?? |
Pomaže li ako dodaš jedno [NE] na kraj pravila, tamo iza [L]? |
|
|
Back to top |
|
|
unLog!c
Joined: 27 May 2004 Posts: 185 Location: Osijek
|
Posted: 05.04.2005 10:57 Post subject: |
|
|
Evo, sredio sam, sada radi...
bezveze sam uzeo malo čitao i došao sam do ovoga da nije:
Code: | RewriteRule ^/([0-9]+)/([0-9]+)/?$ index.php?file=$1&display=$2 [L] |
nego:
Code: | RewriteRule ^([0-9]+)/([0-9]+)/?$ index.php?file=$1&display=$2 [L] |
i sada radi hvala... |
_________________ Why dont you go out and play hide and go fuck your self like all other NORMAL kids? |
|
Back to top |
|
|
unLog!c
Joined: 27 May 2004 Posts: 185 Location: Osijek
|
|
Back to top |
|
|
Sulien
Joined: 04 Jan 2004 Posts: 2905 Location: Zagreb
|
Posted: 08.04.2005 00:55 Post subject: |
|
|
e da! problem također ovdje!!
naime, browser ne zna da to nisu pravi folderi pa zbog relativnih path-ova traži nepostojeće fajlove
ja sam to riješio tako da sam sve stvari koje su u "style/" i "images/" jednostavno linkao apsolutnim pathovima budući da su mi sajtovi u root-u a doma imam virtualce
problem dolazi kad site nije u root-u, pisati apsolutne pathove koji će se mijenjati je glupo
možda je rješenje još par rewrite ruleova koji prepisuju krive pathove u prave? nisam se time još pozabavio |
|
|
Back to top |
|
|
aesqe
Joined: 18 Sep 2003 Posts: 48 Location: zagreb
|
Posted: 08.04.2005 01:43 Post subject: |
|
|
samo ideja na brzinu, ne znam koliko bi bilo prakticno, ali trebalo bi funkcionirati
Code: |
<?php
function do_css()
{
$file_location = PUNI_PATH_DO_CSS_FAJLA;
/* npr /www/root/sajt/css/fajl.css */
$file = file_get_contents($file_location);
$anchor = "{ROOT}";
/* u css ide nesto tipa: background: url('{ROOT}/images/img.jpg'); */
$replace = "/sajt/folder/";
/* i taj {ROOT} se onda riplejsa s ovim gore */
$css = str_replace($anchor,$replace,$file);
echo $css;
}
?>
|
|
_________________ -_-_-_-__oops, missed one-_-_--again_-
::skyphe:: : ::breed:: |
|
Back to top |
|
|
njava mi3.crew
Joined: 25 Aug 2003 Posts: 624 Location: Zagreb
|
Posted: 08.04.2005 02:05 Post subject: |
|
|
raditi ce, ali bolje dodati jos jednu liniju u rewrite, prije ove koju ste spominjali gore
Code: | RewriteRule ^(css|nekidrugidir|treci) - [L] |
s kojom ce se ti direktoriji exkludati iz rewriteanja |
|
|
Back to top |
|
|
unLog!c
Joined: 27 May 2004 Posts: 185 Location: Osijek
|
|
Back to top |
|
|
Sulien
Joined: 04 Jan 2004 Posts: 2905 Location: Zagreb
|
Posted: 08.04.2005 20:54 Post subject: |
|
|
ovo ti je regexp: (exp1|exp2|exp3)
znači da će se matchati jedan od expressiona odvojenih okomitim crtama (pipe characterom)
njava je predložio rješenje da među prvim linijama htaccessa unesemo ovu njegovu koja (prevedena) znači ako URL u sebi ima string 'css' ili 'nekidrugidir' ili 'treci', apache NE rewrita tu liniju (crtica), a [L] znači da je to zadnji rewrite rule.
Pretty simple, ali ne rješava moj problem (a možda ni Striborov). Dakle, ja imam index.php. On u HEAD ima linkan stylesheet "style/default.css". Imam recimo i rule
Code: | RewriteRule ^login/$ index.php?mode=login [L] |
Još uvijek sam u index.php, ali sada url izgleda kao "mysite.com/login/" pa zaključujem da browser traži css kao "mysite.com/login/style/default.css" koji, naravno ne postoji. Zaključujem, nisam siguran. Trebalo bi napisati rule koji krivi relativni link prepisuje u pravi... to naravno ovisi o ostalim rewrite rulovima i kako je netko uredio svoju 'virtualnu arhitekturu', pretpostavljam |
|
|
Back to top |
|
|
njava mi3.crew
Joined: 25 Aug 2003 Posts: 624 Location: Zagreb
|
Posted: 09.04.2005 14:49 Post subject: |
|
|
a zasto ne linkas apsolutno?
/style/default.css |
|
|
Back to top |
|
|
che.UP mi3.crew
Joined: 07 Sep 2003 Posts: 2320 Location: zagreb
|
Posted: 09.04.2005 17:25 Post subject: |
|
|
Sulien wrote: | problem dolazi kad site nije u root-u, pisati apsolutne pathove koji će se mijenjati je glupo
|
|
_________________ UP | TypeTester | Accommodations App
Meni u Firefox-u ne radi AJAX |
|
Back to top |
|
|
njava mi3.crew
Joined: 25 Aug 2003 Posts: 624 Location: Zagreb
|
Posted: 09.04.2005 17:45 Post subject: |
|
|
bit ce da nisam citao
if you don't mind me asking, zasto site ne bi bio u root-u? |
|
|
Back to top |
|
|
Sulien
Joined: 04 Jan 2004 Posts: 2905 Location: Zagreb
|
Posted: 09.04.2005 18:57 Post subject: |
|
|
Pa ono nije uvijek site u rootu
Recimo ako ja napravim site za www.best.hr/redesign/bec nećemo za njega regat novu domenu nego ćemo ga stavit u poddirektorij od BEST.hr
btw i za BEC sam koristio mod_rewrite, za best.hr nisam jer ga nisam znao kad sam radio uskoro ću to popraviti |
|
|
Back to top |
|
|
carr
Joined: 13 Nov 2003 Posts: 1397 Location: Karlovac
|
Posted: 11.04.2005 11:37 Post subject: |
|
|
Sulien wrote: | Pa ono nije uvijek site u rootu
Recimo ako ja napravim site za www.best.hr/redesign/bec nećemo za njega regat novu domenu nego ćemo ga stavit u poddirektorij od BEST.hr
btw i za BEC sam koristio mod_rewrite, za best.hr nisam jer ga nisam znao kad sam radio uskoro ću to popraviti |
malo blesav nacin, al ovako _bj i ja rjesavamo to.
koristimo templateing engine i imamo varijablu
$root="/bec/"
ili
$root="/"
koju onda samo stavimo gdje treba nesto apsolutno linkat npr
href="{root}/css/style.css"
ako nekoristis templejtove onda samo echoaj varijablu.
nije bas elegantno, ali radi. |
_________________ Bolje biti malo lud, nego malo pametan. |
|
Back to top |
|
|
njava mi3.crew
Joined: 25 Aug 2003 Posts: 624 Location: Zagreb
|
Posted: 11.04.2005 22:32 Post subject: |
|
|
Sulien wrote: | Pa ono nije uvijek site u rootu
Recimo ako ja napravim site za www.best.hr/redesign/bec nećemo za njega regat novu domenu nego ćemo ga stavit u poddirektorij od BEST.hr
btw i za BEC sam koristio mod_rewrite, za best.hr nisam jer ga nisam znao kad sam radio uskoro ću to popraviti |
a zasto ne otvorit poddomenu competition.best.hr ? lepse djeluje, bar meni |
|
|
Back to top |
|
|
xpi
Joined: 21 Jan 2004 Posts: 33
|
Posted: 12.04.2005 09:30 Post subject: |
|
|
njava wrote: | a zasto ne otvorit poddomenu competition.best.hr ? lepse djeluje, bar meni |
Mene kod takvih imena uvijek zaspu pitanjima "Jel treba 'www.'?" |
|
|
Back to top |
|
|
che.UP mi3.crew
Joined: 07 Sep 2003 Posts: 2320 Location: zagreb
|
Posted: 12.04.2005 10:51 Post subject: |
|
|
xpi wrote: |
Mene kod takvih imena uvijek zaspu pitanjima "Jel treba 'www.'?" #-o |
pa napravis i da radi sa www i bez :) pa kazes da je svejedno :) |
_________________ UP | TypeTester | Accommodations App
Meni u Firefox-u ne radi AJAX |
|
Back to top |
|
|
1ONE
Joined: 13 Mar 2004 Posts: 136 Location: Zagreb
|
Posted: 20.05.2005 00:25 Post subject: |
|
|
Pitanjce :
evo mog coda :
Code: |
RewriteEngine On
RewriteBase /str
RewriteRule ^([a-z.]+).*$ index.php?str=$1 [T=application/x-httpd-php]
|
i veli on meni internal server error , a cilj je da što mu god napišeš on proba pretvorit u /str/nesto-bilo-sto , a poslje php skripta gleda dali je to pravilan url.
help ? |
_________________ have fun |
|
Back to top |
|
|
1ONE
Joined: 13 Mar 2004 Posts: 136 Location: Zagreb
|
Posted: 20.05.2005 02:45 Post subject: |
|
|
uglavnom , problem je rijesen :
Code: |
RewriteEngine On
RewriteRule ^([a-zA-Z]*)/$ ?str=$1 [L]
|
, tako mali code , a tolike mi je muke dao - ovo sam skuzio tek nakon 3h proucavanja dokumentacije ...
|
_________________ have fun |
|
Back to top |
|
|
nel`chee
Joined: 08 Jul 2004 Posts: 2087 Location: Rijeka
|
Posted: 02.06.2005 00:25 Post subject: |
|
|
evo idem i ja u potragu za ljepsim URL-ovima...
danas sam procitala jedan tutorial koji mi je to tako divno objasnio, evo plug: http://corz.org/serv/tricks/htaccess2.php
uglavnom, isla ja isprobat odma' no problem je sto nesto radi, a nesto i ne bas.
ovaj rule
Code: | RewriteRule ^([a-z]+)/ /?p=$1 [nc] |
prolazi.
no, kad upisem samo url root-a, on mi includa file read.php koji nisam pozvala!
osim toga, kad idem u drugi nivo, sto bi trebalo biti ovo
Code: | RewriteRule ^(gallery|extras|links)/([a-z]+)/ /?q=$1&p=$2 [nc] |
on ignorira ovo a-z i umjesto links/network/ on otvara links/
pretpostavljam da je rijec o redoslijedu? kojim redoslijedom da slazem te ruleove?
[EDIT] 2 min kasnije...
da, zamijenila sam malo redoslijede tako da mi onaj "odredjeniji" ruleovi budu gore, a onaj wildcard dodje na kraju i izgleda da radi kako se spada. jos testiram, ako nesto ne radi i'll be back..
[/EDIT]
nego, sad me zanima nesto malo kompleksnije. imam na negdje varijablu s kategorijom i varijablu sa stranicom (offsetom, je li), a stvar je u tome sto se negdje mogu pojaviti obje od njih, ovako:
http://inobscuro.com/?q=extras&p=brushes&cat=3&go=2
negdje samo kategorija
http://inobscuro.com/?q=extras&p=brushes&cat=3
sto znaci da je prva stranica u pitanju, a negdje samo stranica
http://inobscuro.com/?q=extras&p=brushes&go=2
sto znaci da ne filtrira prema kategoriji nego prikazuje sve (brusheve).
razmisljala sam kako bi to izvela, a onda sam vidjela ovo:
http://www.deviantart.com/deviation/7803711/?offset=175
i skuzila da cak i "veliki" sajtovi ne briju da bas sve bude rulano, pa ajd onda necu ni ja trazit dlaku u jajetu. hoce li ovo raditi?
Code: | RewriteRule ^extras/(brushes|stock|designs|tutorials|scripts)/ /?q=extras&p=$1 [nc]
RewriteRule ^extras/(brushes|stock|designs|tutorials|scripts)/([0-9])/ /?q=extras&p=$1&cat=$2 [nc]
RewriteRule ^extras/(brushes|stock|designs|tutorials|scripts)/([0-9])/?$ /?q=extras&p=$1&cat=$2&%QUERY_STRING [nc]
|
ne mogu isprobati jer testiram na wip serveru, ne zelim si mess up pravi sajt.
naj d vej, lokalno mi nista ne radi kad imam .htaccess u folderu, izbacuje error 500 |
_________________ ♥ art & design portfolio ♥ free Photoshop brushes stuff ♥ sketchblog ♥ facebook ♥ |
|
Back to top |
|
|
nel`chee
Joined: 08 Jul 2004 Posts: 2087 Location: Rijeka
|
|
Back to top |
|
|
1ONE
Joined: 13 Mar 2004 Posts: 136 Location: Zagreb
|
Posted: 03.06.2005 02:41 Post subject: |
|
|
Imam ja jos jedno ovak blesavo pitanje :
ako stavim ovo :
Code: |
RewriteEngine On
RewriteRule ^(dir1|dir2)
RewriteRule ^([a-zA-Z]*)/$ ?str=$1 - [L]
|
znači li to da ce se rewriteati svi str=nesto u /nesto/ osim /dir1 i dir2 ?!?
Pliz help |
_________________ have fun |
|
Back to top |
|
|
|