取れないAPIレスポンスデータ

夕方頃にディレクトリ型検索エンジンdtnを見てみたところ、APIで取得したデータを元に表示されているコンテンツ部分が表示されていないことに気が付きました。

yahoo_api_down.png
電力消費グラフやYahooニュースが表示されておりません

上の画像がその時のイメージですが、APIのレスポンスが取れていないため、人気検索キーワードやヤフーニュース、電力使用状況のグラフも表示がされておりません。何やら素っ気ない感じです。

APIの更新情報をチェック

dtn.jpで使っている人気ランキングやニュースの情報は、Yahoo! JAPAN WebサービスのAPIからデータを取得していますが、Yahooのサービスサイトや公式ブログやtwitterを見ても特にそんな情報はでておりません。

API以外の原因を調査すると

APIの使用回数制限に引っかかったかとも思ったのですが、この過疎サイトでそんなことは考えにくいです。そこで、サーバログを見てみたところ大量のPHP Warningがでておりました。どうやらfile_get_contentsがひたすらエラーを吐いているようです。

PHP Warning:  file_get_contents(http://*****) [function.file-get-contents]: failed to open stream: no suitable wrapper could be found in /*****.php on line *****

深夜のサーバーメンテナンス

この当日は大風邪をひいてしまっていたため、実はあまり正確には覚えていないのですが、確か昨夜までは問題なく動いてた記憶があります。

運営会社のメンテナンス情報を見てみると、どうやらサーバーで緊急メンテをやっていたようですが違うサーバー番号のようです。

とはいえ、番号が近かったので何か一緒にこっそりやっていたのかとは疑い調べたところ、php.iniに変更点がありました。それが、php.iniのallow_url_fopenの設定でした。見るとoffになっています。

allow_url_fopen Off

おわりに

このOffをOnに戻したところ、無事問題解決となりました。勝手に大事なパラメータをいじるサーバ屋があってよいものやら。

yahoo_api_on.png
電力消費グラフやYahooニュースも表示されています

YahooのAPIがないと、本当に素っ気ないサイトになってしまいます。これを見ると末永くAPIを提供してくれることを祈るばかりです。

PHPが学べるおすすめプログラミングスクール

この運営ブログをみて、もしdtn.jp管理人のようにサイトをゼロから作ってみたいという思いに駆られた方は、サイト開発やプログラミングをオンラインで受講できるプログラミングスクールの活用をしてみてはいかがでしょうか。サーバ/WordPress/HTML/CSS/JS/PHP/SQLなどの基本さえ分かれば、ゼロからサイト立ち上げもポンポンできるようになって、今なら仕事や転職にも役立つのでオススメです。

PHPも学べるオンラインスクール

  • CodeCampAWS Cloud9を使ったクラウド上のIDEが用意されているので、ネットにつながればスタート開始可能というゴージャスなスクールです。講師も選べて、Webマスターコースならプログラミング経験0でも一気にフロントエンドからバックエンドまでマスターできます。
  • ウェブカツJava言語やRuby言語なんぞ教えん!という、初心者にありがちな挫折ポイントがよく分かってるスクールです。フロントエンドエンジニアに必要なスキルセット&PHPがマスターできます。
  • フリークス HTML/CSSから始まり、MySQLやLinuxからPHPの変数や分岐やループ、クラスやPDOに最後はMVCまで教えてくれるので、そこまで分かればなんでもできそうです。メンターに質問もし放題がいいですね。
  • テックアカデミー法人のIT研修もやってる業界最大手・受講者数No.1のスクールです。メンターとの定期オンライン面談やチャットサポートなどもあり、大手ならではインフラ環境がウリです。PHPと合わせてjQueryもマスターできる、PHP/Laravelとフロントエンドコースがおすすめです。

オンラインスクールのデメリット

孤独になりがちなサイト制作も、優しいメンターがそばにいてくれれば凄い楽しそうですが、もちろんデメリットもあります。お金がかかるという点です。ひたすらググって、本を読んでよりは確実にコストがかかってしまいます。とはいえ、多少の余裕があるなら、こんなご時世なので時間と労力を買った方が良いと思います。