检测浏览器UA,外部打开网址

本文将介绍php检测特定浏览器UA,并显示特定界面提示外部打开网址。

前言:很遗憾,短网址被人玩脱了,导致本站域名被某信/某Q拦截,某Q申诉没看到具体的拦截的原因,某信申诉看到了原因(诱导…),给出的网址是短网址生成的,感觉有些冤。于是删除该网址,申诉还要答题/填个人信息/网站信息,有些麻烦,但为了域名还是做了,系统提示三天内给出答复,结果一天就通过了。

于是想了想如何避免,这样吧:检测浏览器是否是某信/某Q,然后提示外部打开,查了点资料,思路实现了。

一、建立提示模板

提示外部浏览器打开模板(来自星辰短域:https://github.com/soxft/UrlShorting

https://url.szfx.top/br.php

大家可以下载下来修改一下,建立一个php文件,修改内容如下:

<?php 
  $dwz='http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];//获取当前网址
?>
<a data-clipboard-text="<?php echo $dwz ?>" class="app-download-btn">点此复制本站网址</a>

二、添加UA监听函数

<?php
//判断是否为某信浏览器
function cm_isweixin(){
    if(array_key_exists('HTTP_USER_AGENT',$_SERVER)){
        if(strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger') !== false){
            return true;
        }
    }
    return false;
}
//判断是否为某Q浏览器
function cm_qqbrowser(){
    if(array_key_exists('HTTP_USER_AGENT',$_SERVER)){
        if(strpos(strtolower($_SERVER['HTTP_USER_AGENT']), 'mqqbrowser') !== false){
            return true;
        }
    }
    return false;
}

if(cm_isweixin()||cm_qqbrowser()){
   include "br.php"; 
}
else{
    ...//其他浏览器显示的内容
}

三、测试上线

如果你的域名已红,则直接在浏览器内修改UA测试,测试UA比如:

某Q内置:

 Mozilla/5.0 (Linux; Android 5.1; OPPO R9tm Build/LMY47I; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/53.0.2785.49 Mobile MQQBrowser/6.2 TBS/043128 Safari/537.36 V1_AND_SQ_7.0.0_676_YYB_D PA QQ/7.0.0.3135 NetType/4G WebP/0.3.0 Pixel/1080

某信内置:

 Mozilla/5.0 (Linux; Android 5.1; OPPO R9tm Build/LMY47I; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/53.0.2785.49 Mobile MQQBrowser/6.2 TBS/043220 Safari/537.36 MicroMessenger/6.5.7.1041 NetType/4G Language/zh_CN

电脑Edge浏览器安装插件:User-Agent Switcher and Manager,更改UA。

四、参考资料

1、博客园-PHP中获取当前页面的完整URL

2、卢雨高技术博客-PHP判断设备是否为微信浏览器或QQ浏览器

3、CSDN-QQ、微信、QQ浏览器UserAgent

本文采用 CC BY-NC-SA 3.0 Unported 许可,转载请以超链接注明出处。
原文地址:检测浏览器UA,外部打开网址 作者:松鼠小
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: Telegram @AmashiroNatsukiEars_NoWord Sticker
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
AmashiroNatsukiEars
小恐龙
花!
上一篇
下一篇