From 75cdd69b9b63e1246d29993dffcf1653ef835326 Mon Sep 17 00:00:00 2001 From: TianLun Song Date: Mon, 27 Jan 2025 07:40:13 +0800 Subject: [PATCH] Update application_controller.rb --- app/controllers/application_controller.rb | 39 +++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index be708a8..3293334 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -2,6 +2,45 @@ class ApplicationController < ActionController::Base include SeoConcern # Only allow modern browsers supporting webp images, web push, badges, import maps, CSS nesting, and CSS :has. # allow_browser versions: :modern + allow_browser do |config| + # 保留现代浏览器支持 + config.use :modern + + # 通用移动浏览器 + config.allow(/Mobile Safari/) # iOS Safari + config.allow(/Chrome\/[\d.]+/) # Chrome 内核浏览器 + + # 国内主流浏览器 + config.allow(/Quark\/[\d.]+/) # 夸克浏览器 + config.allow(/HuaweiBrowser\/[\d.]+/) # 华为浏览器 + config.allow(/MiuiBrowser\/[\d.]+/) # 小米浏览器 + config.allow(/VivoBrowser\/[\d.]+/) # vivo浏览器 + config.allow(/OppoBrowser\/[\d.]+/) # OPPO浏览器 + config.allow(/UCBrowser\/[\d.]+/) # UC浏览器 + config.allow(/QQBrowser\/[\d.]+/) # QQ浏览器 + config.allow(/MicroMessenger\/[\d.]+/) # 微信内置浏览器 + config.allow(/Alipay/) # 支付宝内置浏览器 + config.allow(/BaiduBoxApp/) # 百度 App + config.allow(/baiduboxapp/i) # 百度 App (小写) + config.allow(/SogouMobile/) # 搜狗移动浏览器 + config.allow(/Weibo/) # 微博内置浏览器 + config.allow(/DingTalk/) # 钉钉内置浏览器 + config.allow(/ToutiaoMicroApp/) # 今日头条小程序 + config.allow(/BytedanceWebview/) # 字节跳动系浏览器 + config.allow(/ArkWeb/) # 鸿蒙浏览器 + + # 调试日志(开发环境) + if Rails.env.development? + config.on_failure do |browser| + Rails.logger.info <<~INFO + Browser blocked: + Name: #{browser.name} + Version: #{browser.version} + User Agent: #{browser.ua} + INFO + end + end + end before_action :set_locale after_action :track_action