Try running the following program: ================ require 'open-uri' feed_url = "http://www.slate.com/rss" result1 = open(feed_url).read puts "Saving result1.xml:" File.open("result1.xml", "w") {|f| f.write(result1)} result2 = `curl -L #{feed_url}` puts "Saving result2.xml:" File.open("result2.xml", "w") {|f| f.write(result2)} command = "diff result1.xml result2.xml" puts system(command) ================ result1 should be identical to result2, but it turns out that the feed that open-uri fetches is outdated content (by over a month), while the feed that curl fetches is up-to-date. Can anyone please explain what is going on? Thanks!