web-dev-qa-db-ja.com

Facebook Circular Redirectを修正する方法は?

URLをテストしようとしている別のページにリダイレクトするページがあります: https://developers.facebook.com/tools/debug

私はこのエラーを受け取ります:

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. この問題を修正するにはどうすればよいですか?
  2. Facebookを検出し、Facebookの場合はリダイレクトしない方法
35
user1057679

Facebookのurlメタタグの最後に「/」を追加して、これを解決しました。だから、変更された

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

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

そして、それはトリックをしました!

57
kenitech

デバッガー出力のリダイレクトパスセクションにある以下の詳細から明らかになるはずです:ほとんどの場合、これは、たとえば「mysite.com/articles」を指すog:urlタグを指定したために発生します。これは「mysite.com/articles/」にリダイレクトします。クローラーは「mysite.com/articles」に移動し、「mysite.com/articles」を指すog:urlタグを取得します

6
Igy

私は回避策を見つけましたが、LAMPスタック上にありますが、.NET

Apache server使用中のログFacebook Linter私は得た:

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) "

User-Agentにfacebookexternalhitが含まれているかどうかを確認します。含まれている場合は元のページを表示し、そうでない場合は新しいURLにリダイレクトします。

次のRewriteCondApacheで使用して、User-Agent IS NOT(感嘆符に注意を払う)の場合にのみ書き換えルールが実行されることを確認できます。 facebookexternalhit

RewriteCond %{HTTP_USER_AGENT} !facebookexternalhit

FacebookがUser-Agentヘッダーを変更することを決定した場合、このソリューションは危険です。しかし、今のところはうまくいくようです。

5
Jeroen

ページの読み込み後にタイトルを追加すると役立つ場合があります

<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

私の場合、それは標準URLhttpにあり、フェッチされたURLがhttpsにあり、httpsに切り替えると問題が解決しました。

1
shrish

Canonical URL in https://developers.facebook.com/tools/debug リダイレクト先について。 302リダイレクトがある場合は、そのリダイレクトを削除するか、リダイレクトされたパスをog:URLメタタグ値。

httphttpsへのリダイレクトを取得している場合。次に、og:URLの新しい値として https://Sitename.com を指定します。

これらはすべての古いコメントをリセットすることに注意してください。

1
Srihari Karanth

同じエラーが発生しました:私の場合、問題はwwwでした。取得に対する正規のURL。一致し、問題はなくなりました。

1
aleXela

同じ問題がありました。最初は気付かなかったが、herokuはdomain.heroku.comからdomain.herokuapp.comにリダイレクトしていた。

不思議なことに、問題の原因はconfig.action_mailer.default_url_options = {:Host => 'mydomain.herokuapp.com'}でしたが、メーラーは関係ありません。

0
Ian