kimitakeさんにNP_HatenaAuthが動かないという連絡をもらって、いろいろ追跡したら最後にallow_url_fopenがoffだったという結論にたどり着きました。セキュリティ的にはデフォルトはoffである方が好ましいというのはわかるのですが、この問題は結構根が深そうです。
驚いたことにPHP 4.3.4からphp.iniからしかこの設定を変更できなくなってしまいました。(INI_SYSTEMの設定項目になった)誰かがセキュリティ強化を目的として変更したのだとは思いますが、セキュリティも強化できず、有用なリモートファイルアクセス機能も使えなくする非常に拙い変更です。
allow_url_fopenってphp.iniからしかこの設定を変更できないんですね。実は自作のプラグインでもallow_url_fopenに頼ってしまっている部分が結構あってallow_url_fopenがoffだとうまく動かなかったりするんですが、その一方で自前でHTTPの処理をしている部分*1もあるような状態でちょっと統一感がないような状態になってしまっているのですが、この辺りの処理を統一したほうが幸せになれそうです。ということで今後のtodoにいれておきます。
php のマニュアルによると allow_url_fopen が off のときこれ使うといいよ、ってクラスが書かれてありました。たぶんその自前の _http() と中身は似たり寄ったりじゃないかと思うんですが、是非 off でも使えるバージョンをリリースして下さい ^^;
僕もその問題があるので少々面倒だけどPEARを使うようにしました。
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。