人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

blogのrssが、エラー表示されます。
http://rossa.jugem.cc/
_____________________________

フィード コードのエラー
Internet Explorer ではこのフィードを表示できません

このフィードにはコード上のエラーが含まれています。


終了タグ 'SCRIPT' が開始タグ 'content:encoded' と一致していません。
行: 340 文字: 3

</SCRIPT>

・・・とのことなのですが、何をどういう風に直したらいいのか?
あちこち、見てみたのですが、特に思い当たる所がなく、というか、わからなくて。。。
解決方法をお教えください。
よろしくお願いします。



●質問者: rossa
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:blog Internet Explorer RSS SCRIPT エラー
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● regnif
●10ポイント

XMLのencodeingは"utf-8"なのに、scriptタグのcharsetが"euc-jp"だから発生しています。

<?xml version="1.0" encoding="utf-8"?>

<script type="text/javascript" charset="euc-jp">・・・

あまりXML(rss)の中にscriptタグが書かれたものって見ない(というより通常は動作しない?)ですが、

アフィリエイトか何かでしょうか?

http://jss.afpbb.com/sdata/newsdelivery/jugem/js/euc/4317000/3b3...

というJavaScriptを読み込んでいる箇所が"eud-jp"です。

カスタムブロックのようなもので、取り込む記述をしているのであれば、それを消すか、該当箇所の"euc-jp"を"utf-8"に変更(しても問題ないのであれば)すれば、解消するはずです。

ちなみにieは意外とこういったところにシビアなんですが、FireFoxでは問題なく表示されたりするので確認には良いかもしれませんよ。

◎質問者からの返答

早速ありがとうございます。

http://jss.afpbb.com/sdata/newsdelivery/jugem/js/euc/4317000/3b3...

は私の引用している<ニュースサイト>のAFP BB NewsのURLです。ここ。思いもよりませんでした。

確かめてみます。ご回答ありがとうございます。うれしいです。


2 ● y-kawaz
●70ポイント ベストアンサー

scriptタグのcharsetがeucだから云々は全くの間違いですので参考にしないで下さい。

もちろんそのjsファイルとかは全く関係ありませんのでそのサイトに問い合わせとかやめてあげて下さいね。



340行目で起こっている本当のことは、そのサイトのコンテンツテキスト内にCDATAの閉じタグ ]]> が含まれてしまっているのが原因です。

RSSの各アイテムのコンテンツはCDATAで出力されているようですが、CDATAは中身のXMLエスケープをしなくて良いので手軽な反面、CDATA内では ]]> を使うことが出来ないというデメリットがあります。

今回問題になっているのは http://rossa.jugem.cc/?eid=297 のコンテンツ本文の一部にが以下のように ]]> を含んでしまっている為にXMLパースエラーになっているのが原因です。

(前略)
<SCRIPT type=text/javascript> 
// <![CDATA[

document.write("><div style=¥"float:left;display:block;margin-right:10px;¥">")
var gfxObj = new gfx("flash/mounterPU.swf", "266", "411","DetailArticle", "#e7e7e7");
gfxObj.addParam("FlashVars", 
 
"article_id=/fashion/4303320&href=http://img.afpbb.com/flashdata/detail/20090626/4303320.swf");
gfxObj.write();
document.write("</div>")
// ]]> 
</SCRIPT> 
(後略)

対応としては、以下が考えられます。

・当該エントリーのソース中からCDATAを削る(「// 」)を消すだけでよいでしょう

・RSSの出力にCDATAを使わないでXMLエスケープを使うようにする

取り急ぎは前者の対応を行えばエラーは出なくなると思います。

今後のことを考えたら ]]> が含まれる可能性はゼロでないので、後者の対応を行ってCDATAは使わないようにした方が良いと思います。

◎質問者からの返答

ご回答ありがとうございます。

このBLOGは、AFPのサイトの写真や動画を引用して記事にしているのですが、元サイトのAFPから、自分の使用してるBLOGに飛ぶと

自動的に記事が挿入され、その後、自分が感想などを書くスタイルです。

ご指摘いただいています>当該エントリーのソース中からCDATAを削る

・・・というあたりについては、すでに私がじぶんBLOGに記事を書くときにはシステムとして組み入れられていて

ソースを触る状態にはありません。

ためしに、同じ記事を同じ状態で引用してる別のブロガーの記事をチェックいたしましたが、ちゃんと表示されています。

彼らは、特に、>当該エントリーのソース中からCDATAを削る

ようなことはなく、ちゃんとRSSが機能していると思われます。

やはり、私のみの問題で、AFPには関係ないような気がします。

ご回答ありがとうございました。エラーのでる自分と、同じ条件なのに、エラーが出ない人を

もうすこし、比べて、違うところを探してみます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ