Nginx如何搭建图片视频服务器
1 前言
首先是俩故事:
1.1 关于视频
好几年前,我还在上上家公司就职的时候,工作电脑是不连外网的,内网开发,真滴难受,查啥资料的时候,只能用手机。有啥不会的,查到代码了,只能对着一个一个敲。
有一天,俺们接待了一个客户,想给他看我们新产品的的宣传视频,但是视频刚弄好,还在内网,他们坐在会议室聊着天等着看视频,俺们老大出来取视频,拿着笔记本,傻愣愣的,视频在内网,台式机又全部把usb口屏蔽了。忒紧急,不晓得咋办,从内网取东西,又需要邮件一层层审批。这个时候,俺站出来了,用nginx将视频通过我们和三方联调开放的端口转发到外网了,客户看完了,很高兴。结果我挨了一顿批,说我不符合公司流程啥的,最后俺老大把责任担了。。。过程很美好,结果不咋地。
1.2 关于图片
还有一次,是在之后一家公司,做车抵贷业务的,用户信息页面,显示人的,车的,发票的,行驶证的,乱七八糟加起来要显示50多张图片,上传是客户上传的,但是运营要在审批页查看照片审批。现在的手机都贼好,相机拍摄的都7M,8M的。一个页面光图片显示都要400M,这还是一个用户的,当时图片是在阿里的OSS上存储的,下载下来极慢。这时候,老大不高兴了,运营人员审批一个人的资料得5分钟,四分半在等图片加载,技术是干什么吃的。然后压力来到了前端哥们那边,在上传图片的时候进行压缩。但是最多到2M3M左右,实在下不去了。苦苦研究了好几天偶然被我听到了,我就说这用nginx不是很美吗,直接搞一个本地静态资源服务器,搁本地存图片,直接内网访问不是很快。 老大也很开心,就这么搞出来也很舒服,但是问题是,服务器1T磁盘,用户量也不小,可能没几天就满了。但是没几天,国家整治小贷公司,用户不还款,没等到服务器满,公司没了。过程也很美好,结果更不咋地,但这次不怪我。
下面我就简单介绍下这两个部署步骤吧。
2 搭建图片服务器
这个简单,配置一下就好,但要注意gzip的压缩对图片视频等资源是没用的,开启了不但不会减小还占用cpu资源。这里为了演示,直接将图片文件放在html下了。
2.1 配置文件
server { listen 8081; server_name somename alias another.alias; location /image { root html; autoindex on; } }
2.2 显示效果
直接地址加端口加文件名访问
139.155.71.11:8081/image/test1.jpeg
3 搭建视频服务器
这个就有几点需要注意了
想要在chrome播放,视频编码必须是H264的,其他的都是黑屏,只有声音,没有图像。
需要添加mp4模块
3.1 添加视频模块
备份nginx的配置文件,注意,一定要备份,make的时候搞没了你会伤心的。
在nginx的解压目录执行如下命令,当然,要是本来就有其他的模块,也要一起添加上然后执行。
./configure --with-http_mp4_module
然后
make make install
将备份的配置文件放好,重启nginx就行
3.2 配置文件
server { listen 8082; server_name somename alias another.alias; location /video { root html; mp4; mp4_buffer_size 1m;#处理mp4初始内存大小 mp4_max_buffer_size 50m;#处理mp4最大内存大小 limit_rate 150k; #限速 limit_rate_after 20m; #在20m后限速 } }
3.3 展示
访问地址加端口加文件名就可以访问到想要的视频了。
139.155.71.11:8082/video/test4.mp4
视频效果如下:
以上是Nginx如何搭建图片视频服务器的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

如何在 Windows 中配置 Nginx?安装 Nginx 并创建虚拟主机配置。修改主配置文件并包含虚拟主机配置。启动或重新加载 Nginx。测试配置并查看网站。选择性启用 SSL 并配置 SSL 证书。选择性设置防火墙允许 80 和 443 端口流量。

Docker 容器启动步骤:拉取容器镜像:运行 "docker pull [镜像名称]"。创建容器:使用 "docker create [选项] [镜像名称] [命令和参数]"。启动容器:执行 "docker start [容器名称或 ID]"。检查容器状态:通过 "docker ps" 验证容器是否正在运行。

可以通过以下步骤查询 Docker 容器名称:列出所有容器(docker ps)。筛选容器列表(使用 grep 命令)。获取容器名称(位于 "NAMES" 列中)。

确认 Nginx 是否启动的方法:1. 使用命令行:systemctl status nginx(Linux/Unix)、netstat -ano | findstr 80(Windows);2. 检查端口 80 是否开放;3. 查看系统日志中 Nginx 启动消息;4. 使用第三方工具,如 Nagios、Zabbix、Icinga。

在 Docker 中创建容器: 1. 拉取镜像: docker pull [镜像名] 2. 创建容器: docker run [选项] [镜像名] [命令] 3. 启动容器: docker start [容器名]

在云服务器上配置 Nginx 域名的方法:创建 A 记录,指向云服务器的公共 IP 地址。在 Nginx 配置文件中添加虚拟主机块,指定侦听端口、域名和网站根目录。重启 Nginx 以应用更改。访问域名测试配置。其他注意事项:安装 SSL 证书启用 HTTPS、确保防火墙允许 80 端口流量、等待 DNS 解析生效。

可以查询 Nginx 版本的方法有:使用 nginx -v 命令;查看 nginx.conf 文件中的 version 指令;打开 Nginx 错误页,查看页面的标题。

当 Nginx 服务器宕机时,可执行以下故障排除步骤:检查 nginx 进程是否正在运行。查看错误日志以获取错误消息。检查 nginx 配置语法正确性。确保 nginx 具有访问文件所需的权限。检查文件描述符打开限制。确认 nginx 正在侦听正确的端口。添加防火墙规则以允许nginx流量。检查反向代理设置,包括后端服务器可用性。如需进一步帮助,请联系技术支持。
