見当がつかないながらも、Snoopyに原因があるかもと思ってこんなコードを実行してみた。
<?php error_reporting(E_ALL); include_once 'Snoopy.class.php'; $url = 'http://mixi.jp/'; $snoopy = new Snoopy; $snoopy->fetch($url); echo $snoopy->results; ?>
結果はおなじく403 forbidden。
そこでSnoopyとmixiのand検索で以下のページを発見。
フォーラムでそんな感じで愚痴ってたら、解決方法を教えてもらった。
sharedlibs/snoopy/Snoopy.class.phpの799行目 の
$headers .= ":".$this->port; をコメントアウトすればOKです。感謝!!
ではさっそく、と思ったらなんか「かっこがありまへんで」みたいなエラーが全然違うところで発生している。そこをみると文字化けしたらしき部分がある。セーブする前はエラーが出なくてセーブするとエラーが発生しはじめる。いろんな文字コードで読み込んでみるが、まともな文字にはならない。しょうがないのでここをコメントアウト。
$replace = array("", "", "\\1", "\"", "&", "<", ">", " ", chr(161), chr(162), chr(163), chr(169), chr(174), chr(176), chr(39), chr(128), /* "笄, "・, "訷, "帳, "屏, "棧, "漓,*/ );