DevProTalk

DevProTalk (http://www.devprotalk.com/index.php)
-   Regular expression i htaccess (http://www.devprotalk.com/forumdisplay.php?f=41)
-   -   Zašto ne radi 301 redirekcija? (http://www.devprotalk.com/showthread.php?t=4978)

pcigre 28. 03. 2008. 00:39

Zašto ne radi 301 redirekcija?
 
Dodah danas jednu liniju u .htaccess i iz meni nepoznatog razloga redirekcija ne radi...

Kôd:

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

Kôd:

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...

Kôd:

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:
Kôd:

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:

Kôd:

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 :

Kôd:

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

Kôd:

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?optio...S2.0&no_html=1

Daje:
http://feeds.feedburner.com/sajt?opt...S2.0&no_html=1

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


Vreme je GMT +2. Trenutno vreme je 14:26.

Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.

Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.