[开源项目] 站长必备,简单几行代码实现微信拦截自动从微信跳到外部浏览器

[复制链接]
aoki(UID:59) 发表于 2024-12-11 19:04:59 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
以往的跳转方式都是手动跳转,或者提醒跳转。

站长必备,简单几行代码实现微信拦截自动从微信跳到外部浏览器

站长必备,简单几行代码实现微信拦截自动从微信跳到外部浏览器



还有就是通过阿里云的OSS和腾讯云的COS储存桶用html文件进行跳转

因为储存桶的自带的域名不容易域名爆红和打不开

网上的一些跳转方式也是层出不穷。

往期也分享过不少的域名防红的程序,下面分享一段php的代码,可以直接拉起微信浏览器跳转到外部的浏览器

功能分析
检测用户代理 (User-Agent): PHP 代码通过 $_SERVER['HTTP_USER_AGENT'] 检测当前请求是否来自微信浏览器。微信的 User-Agent 中包含 MicroMessenger,所以可以通过 strpos() 函数检测。

如果是微信浏览器:
设置 Content-Disposition 和 Content-Type 头部,让页面表现为下载一个 .doc 文件。微信浏览器不允许直接通过 header('Location: ...') 跳转到外部地址,而是通过这种方式绕过限制。
如果不是微信浏览器:
使用 header('Location: ...') 将用户重定向到目标地址。
HTML 和 JavaScript 提示:

如果用户在微信浏览器中打开,提供友好的提示信息,告诉用户如何通过微信的右上角菜单打开外部浏览器。
一个按钮提供了直接调用浏览器跳转的逻辑(适用于非微信浏览器)。
工作原理
PHP 代码部分
  1. <?php
  2. $ua = $_SERVER['HTTP_USER_AGENT']; // 获取用户代理字符串
  3. $isWechat = (strpos($ua, 'MicroMessenger')) ? true : false; // 检查是否为微信浏览器

  4. if ($isWechat) {
  5.     // 微信环境下伪装成文件下载
  6.     header("Content-Disposition: attachment; filename
复制代码
「123.php」来自UC网盘分享
https://drive.uc.cn/s/352eee5cd7d54?public=1
我用夸克网盘分享了「123.php」,点击链接即可保存。打开「夸克APP」在线查看,支持多种文档格式转换。
链接:https://pan.quark.cn/s/b5f42186ad54
狐狸导航:https://www.foxccs.cn/
全部回复1 显示全部楼层
梦淡如非(UID:8) 发表于 2024-12-13 08:47:39 | 显示全部楼层
好东西啊。好东西。我觉得小归客非常需要。@小归客

快速回帖

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

1楼
2楼

关于楼主

新芽初现
  • 主题

    36
  • 回答

    17
  • 积分

    157

商务推广

    网盘拉新-短剧推广 黑粉猫影院-免费看电影 此位置招租 此位置招租 此位置招租 此位置招租 此位置招租 此位置招租 此位置招租 此位置招租