VOD模块NGINX编译部署
主要解决我那破电视的观影需求、软件装不了又不想掏钱看线上广告;U盘也没法播、没几个兼容的解码软件,五六年前的电视买的是真坑爹,我又不会刷机,那索性用废笔记本装linux整个nginx-vod模块整个音视频链接,电视上用短小精悍的VLC观影。
下包
| mkdir /usr/local/nginx/tmp/client/ -p |
| useradd -s /bin/nologin -M nginx |
| mkdir /opt/source_package -p |
| |
| wget https://nginx.org/download/nginx-1.24.0.tar.gz -O /opt/source_package |
| wget https://codeload.github.com/kaltura/nginx-vod-module/zip/refs/tags/1.31 -O /opt/source_package |
| wget https://codeload.github.com/winshining/nginx-http-flv-module/tar.gz/refs/tags/v1.2.10 -O -O /opt/source_package |
解包
| cd /opt/source_package |
| unzip nginx-vod-module-1.31.zip |
| tar -xvf nginx-1.24.0.tar.gz |
| tar -xvf nginx-http-flv-module-1.2.10.tar.gz |
编译
如果模块编译报错,尝试其他版本重新编译,因为编译时会调用的内核函数,旧版本模块包调用的函数可能在内核中不存在,解决思路就是换包适应内核。
| cd /opt/source_package/nginx-1.24.0 |
| nginx_install_Dir=/usr/local/nginx |
| ./configure --prefix=${nginx_install_Dir} \ |
| --sbin-path=${nginx_install_Dir}/sbin/nginx \ |
| --conf-path=${nginx_install_Dir}/conf/nginx.conf \ |
| --error-log-path=${nginx_install_Dir}/log/error.log \ |
| --http-log-path=${nginx_install_Dir}/log/access.log \ |
| --pid-path=${nginx_install_Dir}/run/nginx/nginx.pid \ |
| --lock-path=${nginx_install_Dir}/lock/nginx.lock \ |
| --user=nginx \ |
| --group=nginx \ |
| --with-http_ssl_module \ |
| --with-http_stub_status_module \ |
| --with-http_gzip_static_module \ |
| --with-http_gunzip_module \ |
| --with-file-aio \ |
| --http-client-body-temp-path=${nginx_install_Dir}/tmp/client/ \ |
| --http-proxy-temp-path=${nginx_install_Dir}/tmp/proxy/ \ |
| --http-fastcgi-temp-path=${nginx_install_Dir}/tmp/fcgi/ \ |
| --http-uwsgi-temp-path=${nginx_install_Dir}/tmp/uwsgi \ |
| --http-scgi-temp-path=${nginx_install_Dir}/tmp/scgi \ |
| --with-pcre \ |
| --with-threads \ |
| --with-cc-opt="-O3" \ |
| --with-openssl-opt=enable \ |
| --with-http_flv_module \ |
| --with-http_mp4_module \ |
| --with-stream \ |
| --add-module=../nginx-vod-module-1.22 \ |
| --add-module=../nginx-http-flv-module-1.2.10 |
NG配置文件参考
| location ~/vod { |
| vod hls; |
| vod_mode local; |
| |
| vod_align_segments_to_key_frames on; |
| vod_manifest_segment_durations_mode accurate; |
| |
| add_header Access-Control-Allow-Headers '*'; |
| add_header Access-Control-Expose-Headers 'Server,range,Content-Length,Content-Range'; |
| add_header Access-Control-Allow-Methods 'GET, HEAD, OPTIONS'; |
| add_header Access-Control-Allow-Origin '*'; |
| alias /data/nginx_media; |
| } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)