2013-12-12 211 views
0

即時通訊使用此代碼通過SSL連接到google.com

$sock = fsockopen("ssl://google.com", 443, $errno, $errstr, 30); 
if (!$sock) die("$errstr ($errno)\n"); 
fputs($sock, "GET/HTTP/1.0\r\n"); 
fputs($sock, "Host: google.com\r\n"); 
fputs($sock, "\r\n"); 
$headers = ""; 
while ($str = trim(fgets($sock, 4096))) 
$headers .= "$str\n"; 
$body = ""; 
while (!feof($sock)) 
$body.= fgets($sock, 4096); 
fclose($sock); 
echo '<div>'.$headers.'</div>'; 
echo '<div>'.$body.'<div>'; 

我收到頁本:

HTTP/1.0 301移到永久位置:https://www.google.com/ 的Content-Type:text/html的; charset = UTF-8日期:2013年12月12日11:03:07 GMT過期時間:2014年1月11日星期六11:03:07 GMT Cache-Control:public, max-age = 2592000服務器:gws Content-Length :220 X-XSS-保護:1; mode = block X-Frame-Options:SAMEORIGIN備用協議:443:quily 301已移動

文檔已移至此處。

我哪裏出錯了?爲什麼我需要使用ssl?我可以只寫https嗎?如果我寫https,那麼我會收到錯誤。

回答

0

您正試圖通過根域「google.com」訪問該網站。服務器試圖將您重定向到實際包含網站的子域名:「www.google.com。添加」www。「子域名前綴,您將不會再獲得301重定向。