WordPressでVPS利用時、SSL更新後等に【ツイッターカードが表示できない】「ERROR: Fetching the page failed because other errors.」時の忘備録

こんにちわ。

先日、色々とあってこのWordPressサイトのSSLが切れた?か、

そもそも発行先名とサイトのドメインが違ったことが原因か?

は、結局定かではなかったのですが、

原因はともかくとして、問題のあるサイト扱いされたので、

対策をしていました。

途中、適当にconfをいじってapacheが起動しなくなってしまうやら何からと・・・

忙しかったです(笑

そのお話しはいつかするときが来たらしようかと思いますが、

無事にサイトが復旧して、いざ投稿をしようと思ったら、

ツイッターカード周りでエラーが出る・・・

というかツイッターカードが表示されない!!!!

という様な状態だったので、ちょっと調べてみて解決はしたものの、

レンタルサーバーでの解決方法は見つけましたが、VPSでの解決方法なんかがあんまりなかったうように思えたので、初心者である私の忘備録として残しておこうかなと。

VPS利用時のSSL更新後などにツイッターカードが表示されない

厳密にいうと、SSL更新後というか、

期限切れで新規に取り直しした場合で、

かつ私のようにちょっと大前提がごちゃごちゃしちゃった系の人限定になるかもしれませんが、

とにもかくにも、Card validator で、

「ERROR: Fetching the page failed because other errors.」

のエラーが出た人は、一回疑ってみた方が良いのが、

SSLの中間証明書の件の様でした。

にししふぁくとりー

さんの情報を参考にさせてもらいました。

が、私の場合はWordpress動かしているのがVPSでなのと、

Let,s Encryptのcertbot-autoで証明書を発行しているので、

インストールができていないって問題ではなさそうかなと思いました。

結果としては、ドンピシャで中間証明書周りの設定ミスだったわけですが、

解決した方法については後述します。

まずは、自分の中間証明書がちゃんと機能しているのかをチェックしてみました。

DigiCert SSL Certificate Checker で、自分のドメインを入力してみます。

という感じで、証明書部分がダメですよ。。。という連絡が返ってきます。

Let’s Encrypt の証明書の設定

私の場合は、Let’s EncryptでSSL証明を取っていたので、

その周りであることは間違いないとわかりました。

では、どこがどう設定を間違っていたのか?

私のサーバとapacheのverはこんな感じです。

サーバOS   ubuntu 16.04

apache  ver 2.4.18

まずは、ubuntuの場合だと、ネットで多く見かけるapacheのconfファイルの名称(多分CentOSが多いのだろうか?)とapacheの設定ファイルの場所が違ってたりするんですよね。

その辺りは今回は記述しないとして、

取りあえず、apacheのSSLconfファイルがapache2ディレクト内にあるので、

そこを見に行きました。

apache 2.4.8以上と、apache 2.4.8未満だと記載する内容が微妙に異なります。

詳細は、下記の

Let’s Encrypt の使い方 の【7. SSL/TLS サーバ証明書の取得完了】

に詳しく書いてありますが、

SSLCertificateFile

SSLCertificateKeyFile

SSLCertificateChainFile

をapacheのssl.confファイルに記載するやり方みたいなのが書いてます。

apache 2.4.8以上の私の場合は記載する部分

SSLCertificateFile に

サーバ証明書と中間証明書が結合されたファイルである、fullchainN.pem

SSLCertificateKeyFile に

秘密鍵である、privkeyN.pem

(Nは連番で数字が入るが、私の場合は入ってない)

の二つのパスを記載すればいいということだったのですが、

私は間違って、SSLCertificateFile中間証明書ファイルのパスを記入していました。

(chainN.pem

で、

多分うまく機能していなかったと。

その部分を訂正したら、DigiCert SSL Certificate Checker でのエラーも消えました。

そして、

Card validator でもエラー吐かなくなり、

ツイッターカードもうまく表示されましたとさ。

一応、忘備録的に書いておきました☆

「ERROR: Fetching the page failed because other errors.」まとめ

ツイッターのツイッターカードが表示されずに、Card validator で、

エラーで「Fetching the page failed because other errors.」

が出た場合は、背景にもよりますが、SSL証明書関係を疑ってみるのもありかと思われます。

エラー内容がその他のエラーって感じで出るので五里霧中になりますが、

私は少なくとも上記な感じでした。

それでは、お疲れさまでした。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする