PDA

Pogčedajte punu verziju : Zašto ne radi 301 redirekcija?


pcigre
28. 03. 2008., 00:39
Dodah danas jednu liniju u .htaccess i iz meni nepoznatog razloga redirekcija ne radi...

Redirect 301 /putanja/index.php?action=nesto http://drugisajt.com/forum/index.php?topic=1.0

Druge redirekcije iz istog .htaccess-a uredno rade. Da ga ne bune znakovi pitanja, jednakosti i sl.? (linkovi koji rade, ih ne sadrže)

pcigre
08. 04. 2008., 12:52
Ni

Redirect 301 /index2.php?option=com_rss&feed=RSS2.0&no_html=0 http://www.pcigre.com/index2.php?option=com_rss

mi ne radi... a nemam ideju gde grešim...

pcigre
09. 04. 2008., 00:31
Probah i sa rewrite...

RewriteRule ^index2\.php.option=com_rss&feed=RSS2\.0&no_html=0$ index2.php?option=com_rss [R=301,L]

i sa escapeovanjem svega i svačega... i neće...

Ako stavim da je stari url nešto bez tačaka, znakova pitanja i sl... npr. /nerviracija... uredno se redirektuje...

ivanhoe
09. 04. 2008., 03:45
za Redirect ne znam 100%, ali RewriteRule sigurno ne moze da ima GET parametre u sebi.. zato sto Apache to ne tretira kao deo url-a, a ovde se gleda samo url...

MOras da koristis nesto ovako:

RewriteCond %{QUERY_STRING} option=com_rss
RewriteCond %{QUERY_STRING} feed=RSS2\.0
RewriteCond %{QUERY_STRING} no_html=0
RewriteRule index2\.php http://tvojsajt.com/index2.php?option=com_rss [R=301,L]


Ovi RewriteCond mogu da se sastave u jednu liniju ako mozes da budes siguran da ce redosled parametara uvek biti isti (ako je to link na strani, a ne form submit). Spoljni redirect bi po pravilu trebalo uvek da se pise sa punim url-om (mada uglavnom radi i bez toga, ali to je kao neka preporuka)

pcigre
09. 04. 2008., 04:01
Hvala. Korak bliže sam :)

Iz nekog razloga mi redirektuje na sajt.com/index2.php?option=com_rss%5bR,L%5d

Redosled parametara mi je uvek isti.

edit: moja greška. Nekako mi je nestala pauza pre [R=301,L].

Da li postoji mogućnost da kažem da ILI... npr ukoliko je feed=RSS2\.0 ILI eed=ATOM ista priča i za no_html=0 ILI no_html=1 ?

pcigre
09. 04. 2008., 04:40
Trenutno stanje:

RewriteCond %{QUERY_STRING} option=com_rss
RewriteCond %{QUERY_STRING} feed=RSS2.0
RewriteCond %{QUERY_STRING} no_html=1
RewriteRule index2\.php http://www.sajt.com/index2.php?option=com_rss [R]

RewriteCond %{QUERY_STRING} option=com_rss
RewriteCond %{QUERY_STRING} feed=RSS2.0
RewriteCond %{QUERY_STRING} no_html=0
RewriteRule index2\.php http://www.sajt.com/index2.php?option=com_rss [R]

RewriteCond %{QUERY_STRING} option=com_rss
RewriteCond %{HTTP_USER_AGENT} !.*FeedBurner.*
RewriteCond %{HTTP_USER_AGENT} !.*FeedValidator.*
RewriteRule index2\.php http://feeds.feedburner.com/sajt[L,R=302]

Kada unesem http://www.sajt.com/index2.php?option=com_rss redirektovan sam na http://feeds.feedburner.com/sajt?option=com_rss

Kako da se otarasim ovog ?option=com_rss iz feedburner adrese?

ivanhoe
09. 04. 2008., 13:10
izmeni redirekciju da nema taj parametar, npr. nek sve ide na neki virtualni fajl index_rss.php :


RewriteCond %{QUERY_STRING} option=com_rss&feed=RSS2.0&no_html=1
RewriteRule index2\.php http://www.sajt.com/index_rss.php [R]

RewriteCond %{QUERY_STRING} option=com_rss&feed=RSS2.0&no_html=0
RewriteRule index2\.php http://www.sajt.com/index_rss.php [R]

RewriteCond %{HTTP_USER_AGENT} !.*FeedBurner.*
RewriteCond %{HTTP_USER_AGENT} !.*FeedValidator.*
RewriteRule index_rss.php http://feeds.feedburner.com/sajt[L,R=302]


posto kazes da je redosle GET parametara uvek isti onda sam sastavio sve u jednu liniju..

pcigre
09. 04. 2008., 14:13
RewriteCond %{QUERY_STRING} option=com_rss&feed=RSS2.0&no_html=1
RewriteRule index2\.php http://www.sajt.com/index_rss.php [R]

RewriteCond %{QUERY_STRING} option=com_rss&feed=RSS2.0&no_html=0
RewriteRule index2\.php http://www.sajt.com/index_rss.php [R]

RewriteCond %{HTTP_USER_AGENT} !.*FeedBurner.*
RewriteCond %{HTTP_USER_AGENT} !.*FeedValidator.*
RewriteRule index_rss.php http://feeds.feedburner.com/sajt [L,R=302]


Mi kad unesem:
http://www.sajt.com/index2.php?option=com_rss&feed=RSS2.0&no_html=1

Daje:
http://feeds.feedburner.com/sajt?option=com_rss&feed=RSS2.0&no_html=1

Ako iskomentarišem deo za feedburner dobijem url:
http://www.sajt.com/index_rss.php?option=com_rss&feed=RSS2.0&no_html=1