11
29
2015
とあるサイトで、WordPressで作られたブログからRSSを読み込んで最新記事を取得、表示するようにしたところ、読み込みしているページで凄まじいPHPエラーが出てしまいました。
いつもの処理で読み込んでいるのになんでだろう…?ブログ記事がないときはエラー回避していたつもりだけど…と思って、RSSのページを見てみたら、なんと記事が表示されてません!?あれ?ブログは入力しているけど…?
まず疑ったのは『RSSの設定を、管理画面で0件にしている』とかですが、いくら調べても怪しいところがありませんでした。
ネットも一晩かけて調べたのですが、どうもこのような症状になっているケースが見当たらない…。
このケースで特殊な事象として、RSSページのソースを見てみるとデータは吐き出されている!!ということです。
ちゃんとxmlデータが吐き出されて、中を見る限りは問題なく出力されていました。
正しく取得できている別のブログのRSSと比較して書式をチェックしても問題なし…。
『xmlが正しいのに、RSSとしては壊れている』という状況で、なぜページが真っ白に空白になってしまうのでしょうか。
そこでいいものを発見!!W3CのXML validat0rというチェックサイトです。W3Cはhtmlのvalidaterだけじゃなくてxmlもチェックしてくれるのですね。
そこではなんとエラーあり!!不正な文字がある…?でもエラーが出た箇所は何も問題ない…。でもそのエラーを解消すべくチェックしてみると…。
なんと変な記号が紛れていました。
調べてみると、文字コードが0x8…?バックスペースを意味する記号でした。なぜこのようなコードが?
まずはこの記号を(全て)取り除いたところ、RSSは正常に表示されました!!
このようなテキストを制御する文字コード、例えばバックスペース、ヌル、EOF、ベルなどの、0x0〜0x31くらいの文字が紛れていると、予期せず色々なところに問題が起こり得る可能性があるということですね。
ちなみにW3Cのvalidatorでは、この制御記号が悪さをして、エラー位置表示がずれていたようです。
WordPressの入力では問題なく通ってしまいましたが、ブラウザで真っ白になっていたのでブラウザ(safariやFirefox、Chromeで確認)は対応していないということです。さらに、素直に処理をしているphpではテキスト処理でトラブルが起こってエラーになってしまったようです。
さらに言うと、この記号はソフトによっては見えないようです。sublime3では上図の通り、FireFoxのソースでもシステム記号として表示がされてました。しかし、他のソフトでは全く何も変な文字は表示されていないので気づくことができませんでした。
この記号は実はいろんな記事で使われていたため、『ブログを書いている人は、wordなどの独特な仕様のテキストエディタを使ってブログを書いて、コピペしているのでは?』と予想して、ブログの記事を書いている方に『使っているソフトはやめてみてください』とお伝えしたところ、このトラブルが解消!問題解決できてよかったです…今度使用していたソフトを聞いてみないと…。
ということで、テキスト制御のシステム記号が何かしら誤って入力されてしまった場合、サイトでphpエラーが出てしまう可能性があるため、できるだけwordなどは使わないようにしましょう。
wordは特殊でアプリケーション依存文字などもたくさんあるので…。
RSSページに何も記事が表示されなくて、でもxmlはあるっぽい?という方はこういう制御文字も疑ってみるといいかもしれません。
jQueryライブラリのmasonryでちょっと困った
東京拉麺さんがキャンペーン中&漫画描かせていただきました
Three.jsでOrbitControls.jsのドラッグ方向を逆転させたい
YouTubeゲーム実況動画が苦手な理由
WordPressのRSSページが真っ白で取得できない?
『ふうらい姉妹1巻』読んでいて主人公の生活が非常に不安になる、超シュール系4コマ。
『LIAR GAME 18』最終戦、四国志ゲーム開始!19巻は4月中に発売なので完結直前です!
『野崎まど劇場』なんて酷いラノベだ…と、爆笑しました。フリーダムな短編集。将棋のアレも…。
『iPhoneアプリ開発の教科書』カラーでイラスト多くて、まずはこれを読んでみようと購入しました。
『数論の世界』高校レベルの知識での面白い数論の話。高校の時にこの本を知っていたら…。
『ミーティアわんわん』古賀亮一先生の電撃新連載!もったいないので少しずつ読んでます。
『新ゲノム5』相変わらずの古賀亮一マンガです。とにかくギャグの密度が高い…!
『HTML5&CSS3ポケットリファレンス』技術評論社のPRシリーズは鉄板です。
『容疑者Xの献身』今更ながら、こんなに面白い邦画に出会えるとは…!悪い予想を上回る結末。
『ゆるめいつ』シュール系脱力4コマ!この作品に触発されて4コマを描き始めました。