PHP认证 MP4文件 播放
2022/8/23 1:54:07
本文主要是介绍PHP认证 MP4文件 播放,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1、问题
- 直接放在WEB目录下,文件不安全,没有认证可以直接访问;
- PHP认证通过后返回WEB目录下的真实文件地址,不安全,访问一次后后续可以直接访问;
- 用PHP读MP4文件然后再输出:加载速度、内存占用、快进快退都会有问题;
2、解决思路:
- 采用php认证后nginx播放
- 转hls后加密播放
3、PHP认证后nginx播放
在nginx中配置:
# 这里使用internal做下载防护,只允许内部程序(PHP等)访问,这样外部直接访问这个地址就会提示404错误 location ~ \.mp4$ { internal; # 这里的路径配置是可选的,可以配置到网站外部,和其他location里的配置路径是一个意思,可以更好的防止文件被通过网址下载 root /opt/video; }
在PHP中在认证通过后,写:
header('X-Accel-Redirect:/20220822/06.mp4')
将带认证的php文件作为video标签的src,就能播放服务器上:/opt/video/20220822/06. mp4 文件。
存在的问题及解决方法:
nginx这种写法可能导致所有的mp4请求都走/opt/video,如果之前有已经存放在web目录下直接访问的mp4文件,需要兼容已有程序,这么做:
location /28dfs238deswh9HJGAS38/ { internal; alias /opt/video; }
php里这么写:
header('X-Accel-Redirect:/28dfs238deswh9HJGAS38/20220822/06.mp4')
4、转hls后的加密播放(未完待续)
这篇关于PHP认证 MP4文件 播放的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-19php8的协程和hyperf的协程有什么区别?-icode9专业技术文章分享
- 2024-12-19php8 的fiber是什么?-icode9专业技术文章分享
- 2024-12-05怎么在php8,1 里面开启 debug?-icode9专业技术文章分享
- 2024-12-05怎么在php8,1 里面开启 debug?-icode9专业技术文章分享
- 2024-11-29使用PHP 将ETH账户的资产汇集到一个账户
- 2024-11-23怎么实现安卓+php 热更新方案?-icode9专业技术文章分享
- 2024-11-22PHP 中怎么实现判断多个值是否为空、null 或者为 false?-icode9专业技术文章分享
- 2024-11-11开源 PHP 商城项目 CRMEB 二次开发和部署教程
- 2024-11-09怎么使用php在kaufland平台刊登商品?-icode9专业技术文章分享
- 2024-11-05PHP的抽象类和接口是什么,有什么区别-icode9专业技术文章分享