さくらサーバでサイト制作を行い、完成!” Twitterに載せよ~♬♩ ”とウキウキしていたところ、
ツイッターカードが表示されないという問題が発生しました。ここまできて。。!( ゜Д゜)!!
ソースにmetaタグを設置し、twitterに承認申請することで表示されるようになります(
Card validatorで申請します)が、
「Unable to render Card preview」のエラーが表示され続けます。
詳細を読むと、「WARN: No metatags found」となっていますが、何度も何度もソース見てもちゃんと設定されています。
- ソース内にtwitter cardのmetaタグは正しく表示されている。
- robots.txtも設置していない。
- .htaccess等でアクセス制限していない。
今回制作したサイトは、headerやfooterを共通化し、phpで読み込むことで作成しています。
まさかphp使うとツイッターカード使えないとかないよね??等々たくさんのことを考えましたが、結果は単純でした。。
ツイッターカード申請をするたびに、さくらサーバのエラーログにphp.cgiでのアクセスエラーが出ていたのです。
「client denied by server configuration: /home/xxxxx/php.cgi」
そしたらこんな記事がありました。:
「レンタルサーバ 国外IPアドレスフィルタ」
デフォルトで国外IPからのアクセスが拒否されていたのです。
この設定を「有効」にすることで、見事ツイッターカードが表示されるようになりました。
海外からの大量アクセスに悩むこともありますが、この有難い設定に今回は首を絞められてしまいました。
解決してよかったです!
KOHIMOTO LABO
東京・吉祥寺でKOHIMOTO Inc.というWebサイト制作の会社をやっているエンジニアとデザイナーが、発信を通して成長していくためのラボ🧪 IT企業出身。サイト制作を通じて微力ながら社会が良くなる手助けをしたいと思っている。