[ Max Payne @ 11.11.2011. 19:12 ] @
Imam link koji vodi na ovaj url na mom novom sajtu

Code:
http://www.mojsajt.com/vesti/strana.php?s=jos_nesto


taj url vise ne postoji, pa hteo bih da taj link, tj. tu stranicu redirektujuem 301 na root
Code:
www.mojsajt.com


citao, trazio, pokusavao - ne vredi, jel ima neko ideju kako ovo da uradim ?
[ Jbyn4e @ 12.11.2011. 07:47 ] @
ŠTA si konkretno pokušavao? Pa da vidimo gde je zapelo. Ne može to tako "pokušavao sam", a ništa kako si pokušavao.
[ Max Payne @ 12.11.2011. 15:23 ] @
Ovako trenutno izgleda .htaccess fajl:

Code:
Options +FollowSymlinks
RewriteEngine on
RewriteBase /
Rewritecond %{http_host} ^mojsajt.com [nc]
Rewriterule ^(.*)$ http://www.mojsajt.com/$1 [r=301,nc] 

RewriteCond %{THE_REQUEST} ^.*/index.php
RewriteRule ^(.*)index.php$ http://www.mojsajt.com/$1 [R=301,L] 


i to radi kako treba, znaci otvara se www verzija sajta, i index.php redirektuje na /

Znaci ovo na primer radi

Code:
Redirect 301 /test.html /


lepo redirektuje na / , ali ovo ne radi:

Code:
Redirect 301 /vesti/strana.php?s=jos_nesto /


sve moguce varijante ovoga u smislu nekog skracivanja url/a sam probavao ali nece da proradi. Problem je ovo sto ide posle .php s=jos_nesto jer da je tu kraj /vesti/strana.php ne bi bilo problema.

Onda sam probao sa rewrite razne varijante (pre svega nisam siguran da li za ovo treba redirect ili rewrite?):

Code:
RewriteCond %{THE_REQUEST} ^.*/jos_nesto
RewriteRule ^(.*)jos_nesto$ http://www.mojsajt.com/$1 [R=301,L] 


i slicno tog tipa sto sam mogoao da nadjem po netu, ali bez uspeha.

Jedino sto je bilo blizu jeste ovo:

Code:
Redirect 301 /vesti/strana.php / 


to otvara pocetnu stranicu ali url ostaje ovako

Code:
http://www.mojsajt.com/?s=jos_nesto


sto opet nije to sto bi hteo, treba mi da 301 redirektuje na /










[ Jbyn4e @ 13.11.2011. 08:31 ] @
Postoji jos nesto osim %{THE_REQUEST} i zove se %{QUERY_STRING}, sto je ono sto ti treba.

Ne ulazeci u to zasto ti se nastavlja prvi rule (nc opcija, next chain), trebi treba nesto ovako:

Code:

 RewriteCond %{QUERY_STRING} ^upit\=([0-9]+)$
 RewriteRule ^/putanja/koja/se/rewriteuje/index\.php$       /?                      [R=301,L]

Ovo ce na primer da sve oblika http://www.sajt.com/putanja/ko...e/index.php?upit=neki_broj(evi) da preusmeri na naslovnu, tj. root sajta. E sad jos to primeni na tvoj primer, http://www.mojsajt.com/vesti/strana.php?s=jos_nesto.

P.S. Korisno: http://www.addedbytes.com/cheat-sheets/mod_rewrite-cheat-sheet/
[ Max Payne @ 13.11.2011. 18:50 ] @
Citat:

Code:

 RewriteCond %{QUERY_STRING} ^upit\=([0-9]+)$



ali sta bi trebao da napisem ovde umesto "upit" ?
[ Jbyn4e @ 13.11.2011. 19:10 ] @
Razmisli malo...

Hint: uporedi one dve internet adrese koje sam napisao u prethodnom postu i izvuci zakljucak gde je meni "upit" a sta je tebi na istom mestu.
[ Max Payne @ 13.11.2011. 19:48 ] @
ne vredi, suvise mi je to sve komplikovano, barem 5 sati celih pokusavam ovo da resim i ne uspevam, treba sada da ucim sintaksu da bi uradio jednu redirekciju, nemam vise zivaca za ovo, ako znas pomozi mi , ako ne batali, nista mi ne znace ovi hint-ovi...
hvala u svakom slucaju...
[ Max Payne @ 13.11.2011. 19:53 ] @
Citat:
Jbyn4e

Code:

 RewriteCond %{QUERY_STRING} ^upit\=([0-9]+)$
 RewriteRule ^/putanja/koja/se/rewriteuje/index\.php$  /? [R=301,L]

Ovo ce na primer da sve oblika http://www.sajt.com/putanja/ko...e/index.php?upit=neki_broj(evi) da preusmeri na naslovnu, tj. root sajta. E sad jos to primeni na tvoj primer, http://www.mojsajt.com/vesti/strana.php?s=jos_nesto.



upit bi moglo da bude sve posle ? znaci s=jos_nesto, ali ako sam to pogodio, ja nemam nikakve brojeve na kraju url-a, sta s tim da radim.

a druga linija, putanja/koja/se/rewrituje - sta to znaci koja putanja:

Code:
http://www.mojsajt.com/vesti/strana.php?s=jos_nesto
vesti/strana.php?s=jos_nesto
/vesti/strana.php
?s=jos_nesto
[ Jbyn4e @ 13.11.2011. 21:03 ] @
Prvo: Pravilnik foruma, tacka 6 - procitati.

Al posto sam dobre volje... Umesto brojeva upotrebi recimo sve, tj. bilo sta (.*)
Dakle:
Code:
^s\=(.*)$

Dalje, puna putanja je ono posle www.mojsajt.com, a do "?" tj. u tvom slucaju
Code:
/vesti/strana.php


I da, ne moze to bez ucenja sintakse, kako mislis da sam ja to naucio? Ne mislis da sam to znao tek tako valjda?






[ Max Payne @ 13.11.2011. 21:46 ] @
Ma slazem se ja sa tackom 6 :) ali tri dana vec pokusavam ovo da resim, nije kao da nisam nista sam radio...

Sve u svemu, dosli smo do ovde:

Code:

RewriteCond %{QUERY_STRING} ^s\=(.*)$
RewriteRule ^/vesti/strana.php/index\.php$  /? [R=301,L]


ali i dalje nece, ili evo celog .htaccess fajla, mozda nesto iznad mu pravi problem, mada probao sam da izbacim sve osim prva tri reda, ali ne radi:

Code:

Options +FollowSymlinks
RewriteEngine on
RewriteBase /
Rewritecond %{http_host} ^mojsajt.com [nc]
Rewriterule ^(.*)$ http://www.mojsajt.com/$1 [r=301,nc] 

RewriteCond %{THE_REQUEST} ^.*/index.php
RewriteRule ^(.*)index.php$ http://www.mojsajt.com/$1 [R=301,L] 

RewriteCond %{QUERY_STRING} ^s\=(.*)$
RewriteRule ^/vesti/strana.php/index\.php$  /? [R=301,L]

[ Jbyn4e @ 14.11.2011. 09:55 ] @
Kao sto si trebao da primenis za upit, trebalo je i za index.php, jer je to kod tebe strana.php...

Dakle:

Citat:
Options +FollowSymlinks
RewriteEngine on
RewriteBase /
Rewritecond %{http_host} ^mojsajt.com [nc]
Rewriterule ^(.*)$ http://www.mojsajt.com/$1 [r=301,nc]

RewriteCond %{THE_REQUEST} ^.*/index.php
RewriteRule ^(.*)index.php$ http://www.mojsajt.com/$1 [R=301,L]

RewriteCond %{QUERY_STRING} ^s\=(.*)$
RewriteRule ^/vesti/strana\.php$ /? [R=301,L]
[ Max Payne @ 14.11.2011. 13:19 ] @
To je to :)

HVALA !