■ユーザーズフォーラム リニューアルのお知らせ
新規投稿は新ユーザーズフォーラムにお願いします。

RSSフィードが表示されない

ryuring > Re: RSSフィードが表示されない @ 2012/3/28 1:49
こんばんは。

実は、僕自身も実案件でどうしても内部フィードが読み込めない事象が何回かありました。
どうやらSimplePieは、DNSに影響するようだというところまではわかったのですが、最終的な解決策は見つけ出せずにいました。
curlが原因だったのですね。

取り急ぎ、チケットを切りました。
http://project.e-catchup.jp/issues/2285

実案件のサイトで一度試してみたいと思います。

情報ありがとうございました!

Twitter:@ryuring
baserCMS総合サービスサイト ビーコミ

goichi > Re: RSSフィードが表示されない @ 2012/3/19 9:40
どうもです(^^
何はともあれ、解決できて何よりです!
情報共有もありがとうございます。
同様の問題で困る人の役に立つと思います!

noaru > Re: RSSフィードが表示されない @ 2012/3/19 2:09
うわああああああ
回答が消えてしまいました・・・・一時間もかけて書いたのに・・・・・・・

とりあえず情報共有させていただきますね。
goichiさんの方法で試したところ改善されませんでした。
ですのでsimplepieのinitにechoを書きまくって原因を特定したところ、
curlでのSSLに関連するエラーを吐いていることが分かりました。

もし同じようにRSSがでないという現象に苦しんでいる方がいたら、sakuraにsshでログインして
curl https://〜.rss
を試してみてください。

curl: (60) SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
More details here: http://curl.haxx.se/docs/sslcerts.html

curl performs SSL certificate verification by default, using a "bundle"
 of Certificate Authority (CA) public keys (CA certs). If the default
 bundle file isn't adequate, you can specify an alternate file
 using the --cacert option.
If this HTTPS server uses a certificate signed by a CA represented in
 the bundle, the certificate verification probably failed due to a
 problem with the certificate (it might be expired, or the name might
 not match the domain name in the URL).
If you'd like to turn off curl's verification of the certificate, use
 the -k (or --insecure) option.


こんなエラーが出たらcurlで死んでます。
自分は証明書の検証をスキップすることでこの現象を回避しました。

そのためにはsimplepie.phpの7669行目の
$fp = curl_init();
の直後に次の2行を追加してください。
			  	curl_setopt ($fp, CURLOPT_SSL_VERIFYHOST, 0);
			  	curl_setopt ($fp, CURLOPT_SSL_VERIFYPEER, 0);				


以上の手順でなんとか解決することが出来ました。

goichiさんありがとうございました、解決の糸口になりました!
goichi > Re: RSSフィードが表示されない @ 2012/3/18 20:59
どうもです(^^

引用:
ローカルで動かした場合は外部のRSSを取得できたのですが、

となると、環境の問題っぽいですよね・・・。

引用:
www.hoge.com canonical name = xxxxx.sakura.ne.jp.

なるほど。つまり、「www.hoge.com」というドメインを取得していて、
「xxxxx.sakura.ne.jp」に対するエイリアスとして設定してあるのですね。

ちなみに一つ素朴な疑問なのですが、いまブラウザで
www.hoge.com
にアクセスして問題が出ているのですよね。では、これを
xxxxx.sakura.ne.jp
としてアクセスした場合、どうでしょうか?
(GoogleAppsでDNSの設定を行い、エイリアスを設定しているとすると、
xxxxx.sakura.ne.jpに直接アクセスすれば、
GoogleAppsを経由していないので、もしかしたら表示されるかも、と思った次第です。
もし表示されればGoogleAppsが原因だと断定できると思うのですが・・・。)
noaru > Re: RSSフィードが表示されない @ 2012/3/18 20:05
ご回答いただきありがとうございます!

引用:
これはインストール直後からでしょうか? それともカスタマイズ途中でこうなったものですか?

これは、インストール直後からです。
ローカルで動かした場合は外部のRSSを取得できたのですが、内部のフィードは読み込めませんでした。
さくらに上げたら今度は外部が読み込めず、もう何が何だか笑

145行目の「$feed->init();」がfalseを返してきているということでしょうか。

はい、そうです。$fee->init()がfalseになってしまいます。
該当関数のどこで死んでいるのか確かめるしかなさそうですかね・・・・・

GoogleAppsとの併用についてですが、こちらはDNSに関連した話になります。
うろ覚えなのですが、simplepieを使うときはドメインをまたぐRSSの取得は自分自身のホスト名が解決できなければいけないという事を聞いたことがありまして、
それが原因なのかなと思いました。
というのも現在独自ドメインのwwwというCNAMEを "ユーザー名.sakura.ne.jp" というように設定しておりまして、
この状態だと一発でwwwのIPアドレスを引けない状態になっています。
これが原因だとすると諦めもつくのですが、なにぶんDNSのレコードをいじるのが怖くて試せていない状況です。

ちなみにnslookupすると次のようになります
nslookup www.hoge.com
Server:		xxx.xxx.x.xx
Address:	xxx.xxx.x.xx#53

Non-authoritative answer:
www.hoge.com	canonical name = xxxxx.sakura.ne.jp.
Name:	xxxxx.sakura.ne.jp
Address: 182.48.49.202


なんか回答がコッチャですみません、、、、
何かアドバイスなどがあればお願い致します!
goichi > Re: RSSフィードが表示されない @ 2012/3/18 13:52
こんにちは(^^
通りすがったので返信してみています。
お役に立てなかったら、ごめんなさい。m(__)m

引用:
登録した外部にあるフィード(ダッシュボードにある'BaserCMSニュース'も含め)が
「ー」という文字に置き換わってしまいます。

これはインストール直後からでしょうか? それともカスタマイズ途中でこうなったものですか?
私もさくらのスタンダードプランで、同バージョンを使っていますが、
いままでそのような現象が起きたことがありません。。。


引用:
正しいフィードのURLが入力されても、rss_exモデルの__getSimplePieメソッドの147-151行目にある以下のコードが実行されてしまう事を確認しました。

145行目の「$feed->init();」がfalseを返してきているということでしょうか。
いま見てみたら、問題のinit関数は「/plugin/feed/vendors/simplepie.php」1500行目から始まってますね。
この中のどこで、falseを返しているのかが分かれば、解決の糸口になるかも知れませんが、
この関数、300行分くらいありますね。。。全部ソースを追うのは気合が必要かも知れません・・・。


引用:
当方さくらスタンダードプランでGoogle Appsの無償版と併用しておりまして、
思い当たるふしとしてこの組み合わせが悪いのかぐらいしか考えられません。

私は詳しくないので、逆に質問になってしまいますが(汗
GoogleAppsとの併用、というのは構築中のサイト内になにかコードを埋め込むようなものですか?
(GoogleAppsで提供されているアプリも色々とありそうなので・・・。)


何だか回答どころか質問ばかりになってしまいました。すみません。
noaru > RSSフィードが表示されない @ 2012/3/18 7:01
掲題の件ですが、もう煮詰まってしまったのでどうかお力添えをお願い致します。
まず現象についてですが、登録した外部にあるフィード(ダッシュボードにある'BaserCMSニュース'も含め)が
「ー」という文字に置き換わってしまいます。

原因を調査したところ、どうもSimplePieの挙動がおかしいのではないかという結論に至りました。
正しいフィードのURLが入力されても、rss_exモデルの__getSimplePieメソッドの147-151行目にある以下のコードが実行されてしまう事を確認しました。


			$ret = $feed->init();

			Configure::write('debug',$debug);

			if(!$ret) {
				return false;
			}



当方さくらスタンダードプランでGoogle Appsの無償版と併用しておりまして、
思い当たるふしとしてこの組み合わせが悪いのかぐらいしか考えられません。

なお内部のフィード(/news/index.rss)に関しては問題なく取得でき、
外部のフィードに関してはhttps/httpとIPアドレス/ドメインの組み合わせを試しましたが
すべてダメでした。
またサーバーにログインしてnslookupを用いて該当ドメイン名を引けるかどうかも試しましたが、引けました。

何か原因として考えられそうな事柄などがありましたらお教えください。
よろしくお願いいたします。

■ BaserCMSのバージョン:1.6.15
■ レンタルサーバー名:さくらスタンダードプラン
■ スマートURLの利用: [ON]
■ 設置フォルダ: [ドキュメントルート]
■ 利用しているデータベース: [MySQL]
ログイン
ユーザー名:
パスワード:


  新規登録 / パスワード紛失

検索

facebook
フォーラムで悩みが解決した場合など、よかったら「いいね!」をポチっとクリックしてください!質問の回答者や開発者の励みになります

フォーラムガイド


関連リンク

オンライン状況
34 人のユーザが現在オンラインです。 (34 人のユーザが フォーラム を参照しています。)

登録ユーザ: 0
ゲスト: 34