Twitter カード プレビューツールを使用して、Twitter カードの設定をテストしています。
<meta property="twitter:url" content="http://liberalgeek.com/content/why-do-atheists-celebrate-christmas" />
<meta property="twitter:card" content="summary" />
<meta property="twitter:description" content="I can't speak for all atheists, I can only speak for myself, so please leave a comment below and explain why you celebrate Christmas! When I hear someone ask, "Why do atheists celebrate Christmas?" my first thought often is: Better Question: Why do Christians celebrate Christmas?" />
<meta property="twitter:creator" content="@kennywyland" />
<meta property="twitter:title" content="Why do Atheists celebrate Christmas?" />
上記のメタ タグを使用すると、プレビューが機能し、期待どおりの結果が得られます。ただし、twitter:image タグを追加しようとすると失敗します。次に例を示します。
<meta property="twitter:image" content="http://liberalgeek.com/sites/default/files/styles/large/public/Christmas%20Tree.jpg" />
twitter:image メタ タグを含めて [プレビュー] ボタンをクリックすると、少し回転してから次のエラーが表示されます。
Looks like something is technically wrong.
Please try again in a few minutes.
そのサイトで他の画像を試しましたが、成功しませんでした。同じApacheサーバーでホストされている他の(非drupal)サイトを試して、drupalの問題ではないことを確認しました:
<meta property="twitter:image" content="http://www.journalscape.com/kenny/images/acupuncture-kenny-2003-08-20-small.jpg" />
これらのイメージの 1 つを別の apache サーバーを備えた別のマシンにコピーすると、Twitter はそれを認識し、問題なく動作します。Twitterはプレビューでそれを示しています。
両方のサイトで自分の robots.txt を確認しました。私の robots.txt には、Twitterbot のフェッチを妨げるものは何もありませんが、提案されたコードを明示的に追加した場合に備えて:
User-agent: Twitterbot
Disallow:
しかし、Apache の Web ログがスクロールするのを見ていますが、Twitter は決して画像を取得しようとしません。プレビュー ボタンをクリックすると、Twitter が画像をフェッチしていることを示すエントリがアクセス ログに表示されるはずですが、何もありません。キャッシュの問題ではないことを確認するために、いくつかの画像を試しました。
私は何を間違っていますか?
編集: 私のマシン (同じ apache) で実行されているサイトの 1 つが正常に動作することがわかりました。この画像を使用する場合:
<meta property="twitter:image" content="http://www.geekqi.com/images/StylizedYinYangRedLucida.png" />
その後、twitterはすぐにそれを取得します。なぜ一方が機能し、もう一方が機能しないのかわかりません。