ПРИМЕЧАНИЕ. Будьте осторожны, некоторые поисковые системы воспринимают это как тип вторжения. См. (АГЕНТ ПОЛЬЗОВАТЕЛЯ HTTP HTTP)
if request.env['HTTP_USER_AGENT'] =~ /[^\(]*[^\)]Chrome\//
или в случае Firefox
if request.env['HTTP_USER_AGENT'] =~ /[^\(]*[^\)]*[^\t]Firefox\//
и отметьте здесь, вы получите все, что вам нужно
браузер Gem
browsers_detection_gem
а вот метод, который может обнаружить все браузеры, так что расслабьтесь
def browser_detection
result = request.env['HTTP_USER_AGENT']
browser_compatible = ''
if result =~ /Safari/
unless result =~ /Chrome/
version = result.split('Version/')[1].split(' ').first.split('.').first
browser_compatible = 'Application is not functional for Safari version\'s '+version if version.to_i < 5
else
version = result.split('Chrome/')[1].split(' ').first.split('.').first
browser_compatible = 'Application is not functional for Chrome version\'s '+version if version.to_i < 10
end
elsif result =~ /Firefox/
version = result.split('Firefox/')[1].split('.').first
browser_compatible = 'Application is not functional for Firefox version\'s '+version if version.to_i < 5
elsif result =~ /Opera/
version = result.split('Version/')[1].split('.').first
browser_compatible = 'Application is not functional for Opera version\'s '+version if version.to_i < 11
elsif result =~ /MSIE/
version = result.split('MSIE')[1].split(' ').first
browser_compatible = 'Application is not functional for Microsoft Internet Explorer version\'s '+version if version.to_i < 9
end
browser_compatible
end