我正在使用應用程序「Fiddler」通過PHP cURL調試GET嘗試到網站。爲了查看cURL流量,我必須指定cURL連接使用Fiddler代理(請參閱下面的代碼)。在HTTP調試代理中使用PHP cURL
$ch = curl_init();
curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, 1);
curl_setopt($ch, CURLOPT_PROXY, '127.0.0.1:8888');
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_HEADERFUNCTION, 'read_header');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
curl_setopt($ch, CURLOPT_REFERER, "http://domain.com");
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_COOKIEJAR, "my_cookies.txt");
curl_setopt($ch, CURLOPT_COOKIEFILE, "my_cookies.txt");
curl_setopt($ch, CURLOPT_URL, "http://domain.com");
$response = curl_exec($ch);
但問題是,在小提琴手,我只能看到這一點:
請求(domain.com只是一個別名):
CONNECT domain.com:80 HTTP/1.1
響應:
HTTP/1.1 200 Blind-Connection Established
如果我在瀏覽器中手動加載網站提琴手給我WAY mo重新信息。我可以看到Cookie,標題信息以及通過GET獲得的信息。
任何想法爲什麼Fiddler無法從PHP cURL中看到更多有用的信息?
編輯:我試着在裏面工具「啓用HTTPS解密」選項打開/菲德勒選項/ HTTPS(我不知道爲什麼我會需要使用,因爲我沒有告訴捲曲使用HTTPS)。
不幸的是,通過更改此設置我現在得到的響應:
HTTP/1.1 502 Connection failed
編輯:如果有幫助,應用程序「查爾斯」顯示我比小提琴手WAY更多的信息,但我真的想找出Fiddler,因爲我更喜歡它。
對不起,我完全錯過了你沒有在這裏使用SSL的事實。除非您實際使用SSL流量,否則沒有理由使用CONNECT隧道。 – EricLaw 2009-11-05 02:52:06