Каждый из приведенных вами примеров URL является перенаправлением (код состояния http 301 или 302). Ваш код рассматривает только http статус кода 2xx как успешный. Добавить другой случай:
when Net::HTTPRedirection then true
ОБНОВЛЕНИЕ: обратите внимание, что использование HTTP HEAD вместо GET будет передавать меньше данных по сети.
uri = URI.parse(url)
response = Net::HTTP.start(uri.host, uri.port) {|http|
http.head('/')
}