it-swarm.com.de

Wie repariere ich Facebook Circular Redirect?

Ich habe eine Seite, die auf eine andere Seite umleitet. __ Ich versuche, meine URL zu testen: __. https://developers.facebook.com/tools/debug

Ich erhalte diesen Fehler:

Errors That Must Be Fixed:
Circular Redirect:‎ Circular redirect path detected (see Redirect Path section for details).

Warnings That Should Be Fixed:
‎The og:url property should be explicitly provided, even if a value can be inferred from other
tags.‎
  1. Wie kann ich dieses Problem beheben?
  2. Wie erkenne ich Facebook und wenn es Facebook ist, leite es nicht weiter?
31
user1057679

Ich habe das Problem gelöst, indem ich am Ende des Meta-Tags der Facebook-URL ein "/" anfügt. Also geändert

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

zu

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

und das hat den Trick gemacht!

53
kenitech

Aus den unten im Abschnitt zum Weiterleitungspfad der Debugger-Ausgabe angegebenen Details sollte Folgendes klar hervorgehen: .__ In den meisten Fällen geschieht dies, weil Sie einen og:url-Tag angegeben haben, der auf (beispielsweise) "mysite.com/articles" und Folgendes verweist Weiterleitungen zu 'mysite.com/articles/' - der Crawler geht dann zu 'mysite.com/articles' und ruft den og: url-Tag auf, der ihn auf 'mysite.com/articles' verweist.

6
Igy

Ich habe eine Problemumgehung gefunden und obwohl es sich auf einem LAMP-Stack befindet, muss mit .NET etwas Ähnliches möglich sein. 

Überprüfen des Apache server-Protokolls während der Verwendung des Facebook Linter-Protokolls:

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. de/externalhit_uatext.php) "

Ich überprüfe nun, ob der User-Agent Folgendes enthält: facebookexternalhit wenn ich die Originalseite anzeigen möchte, falls nicht, leite ich zur neuen URL weiter.

Sie können die folgende RewriteCond in Apache verwenden, um sicherzustellen, dass Ihre Umschreibregel nur ausgeführt wird, wenn der User-Agent IS NOT (auf das Ausrufezeichen achten) facebookexternalhit.

RewriteCond %{HTTP_USER_AGENT} !facebookexternalhit

Diese Lösung ist riskant. Wenn sich Facebook dazu entscheidet, den User-Agent-Header zu ändern, werden Sie königlich ... aber für den Moment scheint es den Trick zu tun.

5
Jeroen

Vielleicht hilft das Hinzufügen des Titels nach dem Laden der Seite

<script type="text/javascript">
// <![CDATA[
    var meta = document.createElement('meta');
    meta.setAttribute("property", "og:url");
    meta.setAttribute("content", location.href);
    (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(meta);    
// ]]>
</script>

http://digdog.tumblr.com/post/1134982957/integrate-tumblr-template-with-facebook-open-graph

3
murshidm

In meinem Fall war es canonical url war auf http und die abgerufene URL war auf https und wechselte zu https. Das Problem wurde dadurch behoben.

1
shrish

Ich hatte denselben Fehler: In meinem Fall war das Problem www. in kanonischer url gegen abgerufen . Matched und Problem verschwunden.

1
aleXela

Ich hatte das gleiche Problem. Zuerst schwer zu merken, aber Heroku leitete mich von domain.heroku.com zu domain.herokuapp.com um.

Seltsamerweise war die Ursache des Problems config.action_mailer.default_url_options = {: Host => 'mydomain.herokuapp.com'}}, obwohl kein Mailer beteiligt ist.

0
Ian

Prüfen Sie im Canonical URL in https://developers.facebook.com/tools/debug nach, wo die Weiterleitung erfolgt. Wenn es eine 302-Weiterleitung gibt, müssen Sie entweder die Weiterleitung entfernen oder den umgeleiteten Pfad als og:URL-Metatag-Wert angeben.

Wenn http zu https weitergeleitet wird. Geben Sie dann https://Sitename.com als neuen Wert von og: URL an. 

Bitte nicht diese werden Ihre alten Kommentare zurücksetzen.

0
Srihari Karanth