Pogledajte određenu poruku
Staro 03. 12. 2009.   #1
robi-bobi
expert
Grand Master
 
Avatar robi-bobi
 
Datum učlanjenja: 05.10.2005
Lokacija: Sofia, Bulgaria
Poruke: 805
Hvala: 222
958 "Hvala" u 68 poruka
robi-bobi ima spektakularnu aururobi-bobi ima spektakularnu aururobi-bobi ima spektakularnu aururobi-bobi ima spektakularnu aururobi-bobi ima spektakularnu aururobi-bobi ima spektakularnu aururobi-bobi ima spektakularnu aururobi-bobi ima spektakularnu auru
Pošaljite poruku preko Skype™ za robi-bobi
Default L flag, subreqest problem

pozdrav

vec neko vreme citam dokumentacije i pitam google ali ne mogu da nadjem odgovor, pa rekoh da pitam ovde

.htaccess situacija:
radim redirekt sa jednog domena na drugi (preselio sam sajt)

postoje 3 uslova:
URL tipa archives* redirektati na jedan nacin
URL tipa feeds* ne redirektati
sve ostalo da ide na novi homepage (mrzi me da matchujem sve ostale slucajeve)

evo ga .htaccess
Kôd:
RewriteEngine On
RewriteBase /

#keep old RSS in place, just so that old users can find about the new site
RewriteRule ^feeds/(.*) index.php?url=/feeds/$1 [L,QSA,NS]

#redirect to new articles @ www.rbnet
RewriteRule archives/([0-9]+)- http://www.robi-bobi.net/blog/$1.html [NS,R=301,L]

#in case all else fails, redirect to www homepage
RewriteRule (.*) http://www.robi-bobi.net/ [NS,R=301,L]
problem:
za URL:
http://blog.robi-bobi.net/feeds/index.rss2
dobijam kao rezultat sledeci redirekt:
http://www.robi-bobi.net/?url=/feeds/index.rss2

po meni, posto sva pravila imaju i L i NS flag, onda bi trebalo da se samo jedno od njih ispuni za jedan request
dakle, recimo neko pravilo ima match, ono je Last u trenutnom requestu, ukoliko postoji subrequest, onda bi ovaj NS trebao da spreci match bilo kog drugog pravila.

evo i mod_rewrite loga (RewriteLogLevel 3):
Kôd:
#tail -f /var/log/apache2/rewrite.log | grep feeds


195.34.104.214 - - [03/Dec/2009:07:12:16 --0500] [blog.robi-bobi.net/sid#a256d08][rid#a4aa0b8/initial] (3) [perdir /home/robibobi/sites/blog.robi-bobi.net/] add path info postfix: /home/robibobi/sites/blog.robi-bobi.net/feeds -> /home/robibobi/sites/blog.robi-bobi.net/feeds/index.rss2
195.34.104.214 - - [03/Dec/2009:07:12:16 --0500] [blog.robi-bobi.net/sid#a256d08][rid#a4aa0b8/initial] (3) [perdir /home/robibobi/sites/blog.robi-bobi.net/] strip per-dir prefix: /home/robibobi/sites/blog.robi-bobi.net/feeds/index.rss2 -> feeds/index.rss2
195.34.104.214 - - [03/Dec/2009:07:12:16 --0500] [blog.robi-bobi.net/sid#a256d08][rid#a4aa0b8/initial] (3) [perdir /home/robibobi/sites/blog.robi-bobi.net/] applying pattern '^feeds/(.*)' to uri 'feeds/index.rss2'
195.34.104.214 - - [03/Dec/2009:07:12:16 --0500] [blog.robi-bobi.net/sid#a256d08][rid#a4aa0b8/initial] (2) [perdir /home/robibobi/sites/blog.robi-bobi.net/] rewrite 'feeds/index.rss2' -> 'index.php?url=/feeds/index.rss2'
195.34.104.214 - - [03/Dec/2009:07:12:16 --0500] [blog.robi-bobi.net/sid#a256d08][rid#a4aa0b8/initial] (3) split uri=index.php?url=/feeds/index.rss2 -> uri=index.php, args=url=/feeds/index.rss2
195.34.104.214 - - [03/Dec/2009:07:12:16 --0500] [blog.robi-bobi.net/sid#a256d08][rid#a4b5ca8/initial/redir#1] (3) [perdir /home/robibobi/sites/blog.robi-bobi.net/] applying pattern '^feeds/(.*)' to uri 'index.php'
195.34.104.214 - - [03/Dec/2009:07:12:16 --0500] [blog.robi-bobi.net/sid#a256d08][rid#a4b5ca8/initial/redir#1] (1) [perdir /home/robibobi/sites/blog.robi-bobi.net/] redirect to http://www.robi-bobi.net/?url=/feeds/index.rss2 [REDIRECT/301]
dakle, vidim da jednom prodje pravilo: feeds/(.*) -> index.php?url=feeds/$1
dovde dobro
medjutim, zasto mi posle opet radi match na index.php, koji prolazi (verovatno ovo poslednje pravilo)

ENV:
debian
apache 2.2
php as fcgi

robi-bobi je offline   Odgovorite uz citat