[ GMC @ 11.02.2010. 19:21 ] @
Pozdrav,

Upravo sam zavrsio rad na novoj verziji portala i odlucio da ga smjestim (tj. vec je smjesten) u folder /v2 na serveru. Ideja je da kada portal bude 100% spreman za javnu upotrebu i da zamjeni postojeci, sve korisnike koji dodju automatski prebacim na novu verziju portala iz foldera v2 ali da adresa ostane ista.

Znaci ako su do sada dolazili na mojportal.com , i od sada ce dolaziti putem iste adrese ali ce ih server redirektati...
Uglavnom to nije nikakv problem i to je rijeseno na ovaj nacin
Code:

    RewriteCond %{REMOTE_ADDR} ^xx\.xx\.xx\.xx$
    RewriteCond %{REQUEST_URI} !^/v2/
    RewriteRule (.*) /v2/$1

provjera IP adrese je tu zato sto jos uvijek portal nije spreman za javnu upotrebu pa da bih SAMO JA mogao pristupiti, ali to nije ni bitno toliko.

Ali ovo redirecta sve zivo na v2 direktorij, sto u vecini slucajeva i odgovara osim u jednom: a to je pristup forumu tj. folderu pod nazivom forum koji je ostao na svojoj staroj lokaciji (root/forum)
Da bude jasnije ovako to izgleda na serveru:

root
+forum
+v2
+ostali fajlovi i folderi od trenutno aktivnog portala

sada ako bi posjetilac upisao mojportal.com/forum, on bi u stvari bio prebacen na mojportal.com/v2/forum sto je pogresno.

Sad mene interesuje kako da ovaj gore rewritecond modifikujem da vrsi preusmjeravanje osim za slucaj kada neko zeli pristupiti forumu.


Nadam se da je jasno sta mi treba.
[ Jbyn4e @ 11.02.2010. 20:48 ] @
Isto kao sto si i napisao, samo dodaj jedno ili... tj. ako nije jednako v2 ili forum, onda idi na v2

http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html#rewritecond
http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html
http://web-programming.suite10...cfm/url_rewriting_via_htaccess

trazi [or]

[ GMC @ 11.02.2010. 22:35 ] @
E hvala, samo mislim da ne treba koristiti OR, vec obicno "and" tj. dva conditiona jedna ispod drugog.

Ali sada imam problem sto mi ne radi ako url nije u obliku www.mojportal.net , npr. ako je mojportal.net nece radit.

Inace cijeli htaccess izgleda ovako

Code:


RewriteEngine on
rewritecond %{http_host} ^mojportal.net [nc]
rewriterule ^(.*)$ http://www.mojportal.net/$1 [r=301,nc]
RewriteCond %{REMOTE_ADDR} ^xx\.xx\.xx\.xx$
RewriteCond %{REQUEST_URI} !^/v2/
RewriteCond %{REQUEST_URI} !^/forum/
RewriteRule ^(.*) /v2/$1



Znaci ovaj gore kod nece raditi za npr.

mojportal.net (bez www)
forum.mojportal.net

Kako da to sredim? Inace dok je sve bilo u root direktoriju je radilo ali sada kad treba preusmjeriti sve na /v2 ova dva gore slucaja ne rade.
[ Jbyn4e @ 12.02.2010. 12:00 ] @
Pogledaj ovo: mod rewrite cheat sheet. Mozda ce ti razjasniti sve.