PHP 伪静态实现 M3U8 防盗链:安全保护你的视频资源

由于 M3U8 文件是基于 HTTP 协议的,因此可以使用伪静态来实现防盗。以下是一个示例的伪静态实现代码:

# M3U8 防盗
RewriteEngine On
RewriteBase /

# 防止直接访问 M3U8 文件
RewriteCond %{THE_REQUEST} \.m3u8
RewriteRule .* - [F,L]

# 防止直接访问 TS 文件
RewriteCond %{THE_REQUEST} \.ts
RewriteRule .* - [F,L]

# 重写 M3U8 请求地址
RewriteRule ^play/([^/]+)/([^/]+)/([^/]+)\.m3u8$ /play.php?vid=$1&uid=$2&token=$3 [L]

# 重写 TS 请求地址
RewriteRule ^play/([^/]+)/([^/]+)/([^/]+)\.ts$ /play.php?vid=$1&uid=$2&token=$3 [L]

以上代码假设 M3U8 文件和 TS 文件都位于 'play' 目录下,'play.php' 是处理请求的 PHP 程序,并且需要传递三个参数:'vid'、'uid' 和 'token'。

如果请求的是 M3U8 文件或 TS 文件,将返回 403 Forbidden 状态码。如果请求的是 /play/vid/uid/token.m3u8/play/vid/uid/token.ts,则会被重写为 /play.php?vid=vid&uid=uid&token=token,然后交给 PHP 程序进行处理。

在 PHP 程序中,可以根据 $vid$uid$token 参数来判断是否有权限访问对应的 M3U8 文件或 TS 文件,从而实现防盗。

PHP 伪静态实现 M3U8 防盗链:安全保护你的视频资源

原文地址: https://www.cveoy.top/t/topic/onKa 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录