From: Brian Candler Date: 2007-04-08T23:42:44+09:00 Subject: Re: Trying to GET google with socket....problem On Sun, Apr 08, 2007 at 05:28:07AM +0900, Hey You wrote: > Well I don't know why the socket can't connect to Google. Here is my > source code: > > require 'socket' > h = TCPSocket.new('www.google.ca',80) > h.print "GET /index.html HTTP/1.0\n\n" > a = h.read > puts a > > I tried changing the HTTP to 1.1 but it still doesn't work. Two problems: (1) Line terminator for HTTP is \r\n not \n (2) You have not supplied a Host: header h.print "GET /index.html HTTP/1.0\r\nHost: www.google.ca\r\n\r\n" I say again: you must read and understand RFC 2616. This documents HTTP/1.1, which has gained a lot of features. You could try reading the earlier RFCs for HTTP/1.0 or HTTP/0.9 for a simplified protocol. B.