View previous topic :: View next topic |
Author |
Message |
_butch
Joined: 10 Sep 2003 Posts: 870 Location: Maichno, Krlovc
|
Posted: 02.02.2004 20:22 Post subject: par pitanja vezanih u mod_rewrite |
|
|
par dumbass pitanja ->
za koristenje mod_rewrite-a -->
moram pitati admina dal se to moze (u vezi http.conf-a) ili mogu jednostavno staviti si .htaccess file sa RewriteEngine On etc...
evo 1. dumbass pitanje gotovo
______
2. psuedi mod_rewrite - koristenje ovakvih urlova, ali bez mod_r..
nasao sam par nacina, ali 1. mi se ne svidja (tipa url je nesto.php/view/11/ ), a
ovaj 2. je /nesto/view/11/ , ali se stavlja u .htaccess da ako je 404 error da se prosljeđuje na neki fajl.. sto mi pak nije super jer se error logovi pune..
da li ima jos neki nacin ili je mod_rewrite the ultimative source
i da ako moze neki link gdje je sve to jaaaaaaaaako lijepo objasnjeno
Hvala ! |
_________________ FRENCH GUARD: No chance, English bed-wetting types.
I burst my pimples at you and call your door-opening request a silly thing, you tiny-brained wipers of other people's bottoms! Flikrac |
|
Back to top |
|
|
che.UP mi3.crew
Joined: 07 Sep 2003 Posts: 2320 Location: zagreb
|
Posted: 02.02.2004 20:38 Post subject: Re: par pitanja vezanih u mod_rewrite |
|
|
Quote: | par dumbass pitanja ->
za koristenje mod_rewrite-a -->
moram pitati admina dal se to moze (u vezi http.conf-a) ili mogu jednostavno staviti si .htaccess file sa RewriteEngine On etc...
evo 1. dumbass pitanje gotovo :D
______ |
vanja ce ti rec da stavis u httpd.conf, ali mozes i u .htaccess (ima neka fora da je ovaj potonji vece opterecenje za server, to on bolje zna:)
Quote: | 2. psuedi mod_rewrite :D - koristenje ovakvih urlova, ali bez mod_r..
nasao sam par nacina, ali 1. mi se ne svidja (tipa url je nesto.php/view/11/ ), a
ovaj 2. je /nesto/view/11/ , ali se stavlja u .htaccess da ako je 404 error da se prosljeđuje na neki fajl.. sto mi pak nije super jer se error logovi pune.. :cry:
da li ima jos neki nacin ili je mod_rewrite the ultimative source :D
i da ako moze neki link gdje je sve to jaaaaaaaaako lijepo objasnjeno :D
Hvala ! |
mozes i ovo sa 404 stranicom, samo onda moras slat response 200 (da je sve ok s fajlom) da ti se ne pune logovi...
"Web guru će odmah reći: ha, znam kako ću otkriti da si koristio ErrorPage - server šalje 404 poruku u headeru. Nemoj mi reći da ćeš prevariti i Altavistu i Googla - oni će odmah znati da te stranice nema po 404 headeru. He, ali i za to ima lijeka. Prije nego 404.php išta prikaže mora poslati header 'HTTP 1.1 200 OK' i stvar je uspješno lažirana, do klijenta uopće ne stiže 404 header" |
_________________ UP | TypeTester | Accommodations App
Meni u Firefox-u ne radi AJAX |
|
Back to top |
|
|
_butch
Joined: 10 Sep 2003 Posts: 870 Location: Maichno, Krlovc
|
Posted: 02.02.2004 20:59 Post subject: Re: par pitanja vezanih u mod_rewrite |
|
|
che.UP wrote: |
mozes i ovo sa 404 stranicom, samo onda moras slat response 200 (da je sve ok s fajlom) da ti se ne pune logovi...
"Web guru će odmah reći: ha, znam kako ću otkriti da si koristio ErrorPage - server šalje 404 poruku u headeru. Nemoj mi reći da ćeš prevariti i Altavistu i Googla - oni će odmah znati da te stranice nema po 404 headeru. He, ali i za to ima lijeka. Prije nego 404.php išta prikaže mora poslati header 'HTTP 1.1 200 OK' i stvar je uspješno lažirana, do klijenta uopće ne stiže 404 header" |
znam
tenkju.. sada cekam vanju |
_________________ FRENCH GUARD: No chance, English bed-wetting types.
I burst my pimples at you and call your door-opening request a silly thing, you tiny-brained wipers of other people's bottoms! Flikrac |
|
Back to top |
|
|
che.UP mi3.crew
Joined: 07 Sep 2003 Posts: 2320 Location: zagreb
|
Posted: 02.02.2004 21:04 Post subject: |
|
|
btw, nadji si ondaj topic utroba mi3ja, imas tamo i primer htaccess fajle.... tj... httpd.confa + apache mod rewrite tutorial, iirc :) |
_________________ 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: 03.02.2004 13:59 Post subject: |
|
|
che je sve dobro rekao. mod_rewrite slozen u httpd.confu je najbolje rjesenje ali to ne znaci da ostali pristupi nece raditi. na tebi je da odvagnes i isprobas kaj ti treba i kaj ti najbolje odgovara.
ovo s redirektanjem na 'error' stranicu prvi put cujem. na prvi pogled zvuci kao zgodan hack, jedino ne znam da li ce proci header redirectovi. dakle, sto se desava ako u php-u okines:
header('Location: /bla/bla/bla'); exit;
da li ce se zadrzati korisnikov session i ostale sitnice. |
|
|
Back to top |
|
|
maxy
Joined: 07 Sep 2003 Posts: 894 Location: Zagreb
|
Posted: 04.02.2004 15:07 Post subject: |
|
|
ja sam naso neku shemu sa REQUEST_URI-jem u kojem nemas mod_rewrite upaljen neg si formatiras linkove da ti budu tipa /news/bla/2 i poberes REQUEST_URI pa ga explodas i onda se igras dalje. doduse nema regexpa s kojima sprijecis script kiddies da ti drkaju po query stringu, al to se isto da srediti.
na sitepointu sam nasao par tutoriala o mod rewriteu i nasao sam 3 nacina s kojima mozes pretvoriti dinamicki sajt u staticki, ali vulgaris usage of mod_rewrite mi je najbolji. |
|
|
Back to top |
|
|
_butch
Joined: 10 Sep 2003 Posts: 870 Location: Maichno, Krlovc
|
Posted: 04.02.2004 20:33 Post subject: |
|
|
e to sam naso na sitepointu, taj sa errorima - niti jedan mi nije nesto mocno, neka lite zamjena
|
_________________ FRENCH GUARD: No chance, English bed-wetting types.
I burst my pimples at you and call your door-opening request a silly thing, you tiny-brained wipers of other people's bottoms! Flikrac |
|
Back to top |
|
|
che.UP mi3.crew
Joined: 07 Sep 2003 Posts: 2320 Location: zagreb
|
Posted: 05.02.2004 00:50 Post subject: |
|
|
ma ofisl apache dokumentacija i rokaj :) ak sam ja uspio onda moze svako :)) |
_________________ UP | TypeTester | Accommodations App
Meni u Firefox-u ne radi AJAX |
|
Back to top |
|
|
_butch
Joined: 10 Sep 2003 Posts: 870 Location: Maichno, Krlovc
|
Posted: 05.02.2004 21:02 Post subject: |
|
|
dakle ->
imam virtualac kojemu je base dir /home/antun/public_html/
Code: |
DocumentRoot /home/antun/public_html/
ServerName localhost
Options FollowSymLinks IncludesNOEXEC Indexes
RewriteEngine On
RewriteRule ^/dummy/([0-9]+)/$ /sajb.php?sajba=$1/
|
ovo je iz http.confa za taj directory.
kada upisem http://localhost/sajba/1/ nista ne prima, izbacujemi error da nema tog directory-a.
probao sam staviti RewriteBase /test/, ali ne prima, kaze da je to za .htaccess, probao sam sa .htaccessom nista..
server -> Apache 1.3.28+MySQL 4.0.16+PHP 5.0.0b3 (prije je bio 4.3.4 i 4.3.5 RC1 i isti problemi.. no ko da php ima veze sa time).
u ovom fajlu koji se treba rewriteati je jednostavna skripta, samo da vidim dal radi ->
Code: |
<?php
$a = $_GET['sajba'];
echo $a;
?>
|
|
_________________ FRENCH GUARD: No chance, English bed-wetting types.
I burst my pimples at you and call your door-opening request a silly thing, you tiny-brained wipers of other people's bottoms! Flikrac |
|
Back to top |
|
|
maxy
Joined: 07 Sep 2003 Posts: 894 Location: Zagreb
|
Posted: 05.02.2004 21:22 Post subject: |
|
|
Code: | RewriteRule ^/dummy/([0-9]+)/$ /sajb.php?sajba=$1/
|
sto ce ti trailing slashevi?
Code: | RewriteRule ^/dummy/([0-9]+)$ /sajb.php?sajba=$1
|
osim toga, za koji ti direktorij prijavi da ne postoji? |
|
|
Back to top |
|
|
che.UP mi3.crew
Joined: 07 Sep 2003 Posts: 2320 Location: zagreb
|
Posted: 05.02.2004 21:38 Post subject: |
|
|
pises localhost/sajba/1/
a mislim da ti regexp ceka localhost/dummy/NEKI BROJ/
(vanja pls, ispravljaj ak meljem bezveze:)
mislim da ti varijabla sajba onda prima samo taj NEKI BROJ, a ne cjeli url... |
_________________ UP | TypeTester | Accommodations App
Meni u Firefox-u ne radi AJAX |
|
Back to top |
|
|
_butch
Joined: 10 Sep 2003 Posts: 870 Location: Maichno, Krlovc
|
Posted: 05.02.2004 22:51 Post subject: |
|
|
umjesto "dummy" treba ici sajba .D
"
Not Found
The requested URL /clinic/sajba/ was not found on this server."
RewriteRule ^/clinic/sajba/([0-9]+)$ clinic/sajb.php?sajba=$1
probao sam ovako..
u biti sve sam probao, detaljno proucio dokumentaciju i jopet ne kuzim zasto ne zeli raditi..
maybe I'm missing something |
_________________ FRENCH GUARD: No chance, English bed-wetting types.
I burst my pimples at you and call your door-opening request a silly thing, you tiny-brained wipers of other people's bottoms! Flikrac |
|
Back to top |
|
|
maxy
Joined: 07 Sep 2003 Posts: 894 Location: Zagreb
|
Posted: 06.02.2004 21:06 Post subject: |
|
|
rekao sam ti vec da u apachejevom error logu pogledas posljednju liniju da vidis gjde steka. ja sam imao slican problem:
moj dir je bio /www/nesto i radio sam preko htaccesa, a mod_rewrite je radio na bazi direktorija /www i u error logu sam vidio "file not found c:\webdev\www\proba.php" koji je trebo biti u c:\webdev\www\nesto\. garant imas neku takvu shemu..
a mozda je neka debilana da ti mod_rewrite nije ukljucen (a po mod_rewrite je po difoltu inkludan u apache distribuciju)..
daj httpd.conf na pregled :> |
|
|
Back to top |
|
|
_butch
Joined: 10 Sep 2003 Posts: 870 Location: Maichno, Krlovc
|
Posted: 06.02.2004 22:48 Post subject: |
|
|
Code: |
[Thu Feb 5 21:49:57 2004] [error] [client 127.0.0.1] File does not exist: /home/antun/public_html/clinic/sajba/
|
Code: |
# Example:
# LoadModule foo_module libexec/mod_foo.so
...
LoadModule rewrite_module /usr/lib/apache/mod_rewrite.so
....
Include /etc/httpd/suse_loadmodule.conf
# Reconstruction of the complete module list from all available modules
# (static and shared ones) to achieve correct module execution order.
# [WHENEVER YOU CHANGE THE LOADMODULE SECTION ABOVE UPDATE THIS, TOO]
ClearModuleList
AddModule mod_php4.c
...
AddModule mod_rewrite.c
...
|
dakle mod_rewrite je tu..
vjerojatno sam sfusao negdje u logici i sve..
I don't get it..
Maybe I'm really that stuupit..
malo system info->
suse 9.0, apache 1.3.28... itd itd.. |
_________________ FRENCH GUARD: No chance, English bed-wetting types.
I burst my pimples at you and call your door-opening request a silly thing, you tiny-brained wipers of other people's bottoms! Flikrac |
|
Back to top |
|
|
njava mi3.crew
Joined: 25 Aug 2003 Posts: 624 Location: Zagreb
|
Posted: 08.02.2004 23:01 Post subject: |
|
|
vrti se prica u krug. kaj bi actually htio dobit?
da kada upises http://localhost/sajba/1/ request ode na sajb.php?sajba=1 ?
if so then:
Code: |
RewriteRule ^/sajba/([0-9]+) /sajb.php?sajba=$1 [L]
|
ne treba ti $ na kraju, s ovim lovis i http://localhost/sajba/1 i http://localhost/sajba/1/
bolja fora je
Code: |
RewriteRule ^/sajba/(.*)$ /sajb.php [L]
|
a u sajb.php
Code: |
$REQUEST_URI = preg_replace('#^http://'.$_SERVER['HTTP_HOST'].'#', '', $REQUEST_URI); // maknes eventualni http://host iz request_urija
$REQUEST_URI = preg_replace('#\?.*#', '', $REQUEST_URI); // maknes eventualne get parametre
$url_array = preg_split('#/#', $REQUEST_URI, -1, PREG_SPLIT_NO_EMPTY); // splitas request u array $url_array
print_r($url_array);
|
ako ti je request bio http://localhost/sajba/1/2/, $url_array ce biti:
Array ( [0] => sajba [1] => 1 [2] => 2 )
eventualno mozes maknuti i prvi element arraya jer se ziher radi o 'sajba', dakle:
array_shift($url_array);
Poanta je da na ovaj nacin imas vecu fleksibilnost, ne moras pisati novi RewriteRule za svaku novu izmisljotinu nego kroz jedan gateway mozes odraditi sve a onda u skripti provjeravati da li je zahtjev valid ili ne. |
|
|
Back to top |
|
|
maxy
Joined: 07 Sep 2003 Posts: 894 Location: Zagreb
|
Posted: 08.02.2004 23:17 Post subject: |
|
|
cjela fora oko njegovog mod_rewritea je da mu je direktorijska struktura podesena krivo. premjesta zahtjeve da rade nad direktorijem koji ne postoji (on kaze da apache rewrita urlove i premjesta ih na dir /clinic/(nesto) a sajt mu stoji u /home/antun/(itd itd)).
inace, ova shema sa REQUEST_URI-jem - to sam vec vidio, al nije li tako problematicnije nego da se radi sa _GET varijablama? |
|
|
Back to top |
|
|
_butch
Joined: 10 Sep 2003 Posts: 870 Location: Maichno, Krlovc
|
Posted: 08.02.2004 23:40 Post subject: |
|
|
ovako ->
server -> /srv/www
virtualac -> /home/antun/public_html/
koji directory zelim sa mod rewire-om "prepisati "
-> /home/antun/public_html/clinic/
|
_________________ FRENCH GUARD: No chance, English bed-wetting types.
I burst my pimples at you and call your door-opening request a silly thing, you tiny-brained wipers of other people's bottoms! Flikrac |
|
Back to top |
|
|
njava mi3.crew
Joined: 25 Aug 2003 Posts: 624 Location: Zagreb
|
Posted: 09.02.2004 00:57 Post subject: |
|
|
_butch wrote: | ovako ->
server -> /srv/www
|
kaj ti ovo znaci?
Quote: |
virtualac -> /home/antun/public_html/
koji directory zelim sa mod rewire-om "prepisati "
-> /home/antun/public_html/clinic/
|
virtualac se zove? cisto da znamo o cemu pricamo. pomoglo bi kad bi onak zdravo seljacki napisao: ja bi da kad napisem abc da se desi xyz (koji directory zelim sa mod rewire-om "prepisati " -> to mi bas nista ne znaci ) |
|
|
Back to top |
|
|
_butch
Joined: 10 Sep 2003 Posts: 870 Location: Maichno, Krlovc
|
Posted: 10.02.2004 23:44 Post subject: |
|
|
/srv/www -> ko /var/www defaultni www bin..
virtualac se zove localhost.. |
_________________ FRENCH GUARD: No chance, English bed-wetting types.
I burst my pimples at you and call your door-opening request a silly thing, you tiny-brained wipers of other people's bottoms! Flikrac |
|
Back to top |
|
|
njava mi3.crew
Joined: 25 Aug 2003 Posts: 624 Location: Zagreb
|
Posted: 15.02.2004 22:10 Post subject: |
|
|
_butch wrote: | /srv/www -> ko /var/www defaultni www bin..
virtualac se zove localhost.. |
ko sto rekoh, nisam te bas skuzio
Quote: |
pomoglo bi kad bi onak zdravo seljacki napisao: ja bi da kad napisem abc da se desi xyz
|
E sad, nasao sam jos jednu varijantu kako rijesiti situaciju s urlovima
u httpd.conf ili .htaccess
Code: | <Files application>
ForceType application/x-httpd-php
</Files>
DirectoryIndex application
|
S time kazes:
- da se fajl application (bez extenzije) tretira kao php fajl
- da application bude DirectoryIndex odnosno defaultni fajl ako se ne upise neki konkretni path
Onda mozes pisati recimo http://domena/application/news/12/ |
|
|
Back to top |
|
|
_butch
Joined: 10 Sep 2003 Posts: 870 Location: Maichno, Krlovc
|
Posted: 15.02.2004 22:51 Post subject: |
|
|
njava wrote: | _butch wrote: | /srv/www -> ko /var/www defaultni www bin..
virtualac se zove localhost.. |
ko sto rekoh, nisam te bas skuzio
kada stavis apache na linuxu mu je default www bin /var/www .. useri si stavljaju public_html folder da bi to bio njihov wwwbin.. u /var/www/ mi je smjesten apache-ov manual cgi-bin.. itd..
[quote=njava]
E sad, nasao sam jos jednu varijantu kako rijesiti situaciju s urlovima
u httpd.conf ili .htaccess
Code: | <Files application>
ForceType application/x-httpd-php
</Files>
DirectoryIndex application
|
S time kazes:
- da se fajl application (bez extenzije) tretira kao php fajl
- da application bude DirectoryIndex odnosno defaultni fajl ako se ne upise neki konkretni path
Onda mozes pisati recimo http://domena/application/news/12/ |
super !!
thnx!! |
_________________ FRENCH GUARD: No chance, English bed-wetting types.
I burst my pimples at you and call your door-opening request a silly thing, you tiny-brained wipers of other people's bottoms! Flikrac |
|
Back to top |
|
|
|