2011-11-22 12 views
29

Ho una pagina che reindirizza a un'altra pagina cerco di testare il mio URL su: https://developers.facebook.com/tools/debugcome risolvere facebook Circular Redirect?

ottengo questo errore: errori che devono essere fissati: Redirect circolare: percorso di reindirizzamento circolare rilevato (vedi Redirect Sezione del percorso per i dettagli).

avvertimenti che devono essere fissati: OG:. Proprietà url deve essere esplicitamente prevista, anche se un valore può essere dedotto da altri tag

  1. come posso risolvere questo problema?
  2. come rilevare facebook e se è facebook non reindirizzare?
+0

Ho anche alcune domande. Che cosa stai usando per reindirizzare la tua pagina? Di quale linguaggio di scripting stiamo parlando? – tuze

+0

io uso Response.Redirect() in ASP – user1057679

risposta

7

Dovrebbe essere chiaro dai dati riportati di seguito nella sezione percorso di reindirizzamento dell'output debugger: Nella maggior parte dei casi questo accade perché hai specificato un og:url tag che indica (per esempio) 'mysite.com/ articoli 'e questo reindirizza a' mysite.com/articles/ '- il crawler va quindi a' mysite.com/articles 'e ottiene il tag og: url che lo rimanda a' mysite.com/articles '

5

Ho trovato una soluzione alternativa e sebbene sia su uno stack LAMP qualcosa di simile deve essere possibile con .NET.

controllando il registro Apache server mentre si utilizza il Facebook Linter ho ottenuto:

69.63.189.246 - - [09/Jan/2012:03:54:45 +0000] "GET /test1.php HTTP/1.1" 200 8879 "-" > "facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)"

ora verificare se l'User-Agent contiene: facebookexternalhit se così ho visualizzare la pagina originale, se non ho reindirizzare al nuovo URL.

è possibile utilizzare il seguente RewriteCond in Apache per assicurarsi che la vostra regola di riscrittura verrà eseguito solo se l'User-Agent NON È (prestare attenzione al punto esclamativo) facebookexternalhit.

RewriteCond %{HTTP_USER_AGENT} !facebookexternalhit 

Questa soluzione è rischioso, se Facebook decide di cambiare il loro User-Agent intestazione sarà regalmente ... ma per ora sembra fare il trucco.

+0

Questo è piuttosto hacky, ma era l'unica cosa che potrebbe risolvere il problema di reindirizzamento circolare allo stesso tempo che ha tenuto tutta la mia Facebook piace intatto. – pagliuca

49

Ho appena risolto questo aggiungendo un "/" alla fine del meta tag url di Facebook. Così, cambiato

<meta property="og:url" content="http://domain.com/path"/> 

a

<meta property="og:url" content="http://domain.com/path/"/> 

e che ha fatto il trucco!

+1

Grazie! Funziona ancora nel 2015 – Merovex

+1

Ancora funziona nel 2017! Il mio problema era in realtà un '' 'mancante 'per avviare la query, ma mi ha fatto guardare nel posto giusto. –

1

Ho avuto lo stesso errore: Nel mio caso il problema era www. in url canonico contro scarabocchiato. Corrispondenti e il problema è scomparso.

0

Ho avuto lo stesso problema. Difficile da notare all'inizio, ma heroku mi stava reindirizzando da domain.heroku.com a domain.herokuapp.com.

Stranamente, la causa del problema era config.action_mailer.default_url_options = {: host => 'mydomain.herokuapp.com'} anche se nessun programma di posta è coinvolto.

1

Nel mio caso è stato URL canonico era http e url inverosimile era su https accenderlo a HTTPS l'it risolto il mio problema.