你是否想过自己搭建一个直播平台?或者想在自己的网站上嵌入实时视频流?其实,借助 Nginx 和它的 RTMP 模块,这一切并不难!本教程将手把手教你如何在一台 Linux 服务器上,通过 Nginx 虚拟主机配置一个简单的流媒体服务器,实现 RTMP 直播推流与播放。即使你是零基础的小白,也能轻松上手!
Nginx 虚拟主机是指在一台 Nginx 服务器上托管多个网站或服务的能力,每个“主机”可以有不同的域名、端口或路径。而流媒体则是指边下载边播放的音视频传输方式,常用于直播、点播等场景。
结合两者,我们可以用 Nginx 同时运行 Web 服务和流媒体服务,比如:用 example.com 提供网页,用 rtmp://example.com/live 接收直播流。
你需要:
标准 Nginx 不包含 RTMP 功能,我们需要编译安装支持 RTMP 的版本。
sudo apt updatesudo apt install build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev git -y cd /tmpgit clone https://github.com/arut/nginx-rtmp-module.gitwget http://nginx.org/download/nginx-1.25.3.tar.gztar -zxvf nginx-1.25.3.tar.gz cd nginx-1.25.3./configure --add-module=../nginx-rtmp-module --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.logmakesudo make install 编辑 Nginx 配置文件 /etc/nginx/nginx.conf,添加 RTMP 和 HTTP 虚拟主机配置。
# 在文件顶部添加以下 RTMP 块rtmp { server { listen 1935; # RTMP 默认端口 chunk_size 4096; application live { live on; record off; # 不录制,仅直播 allow publish all; # 允许所有 IP 推流(生产环境应限制) allow play all; # 允许所有 IP 播放 } }}# HTTP 虚拟主机部分(用于播放页面)http { include mime.types; default_type application/octet-stream; server { listen 80; server_name your-domain.com; # 替换为你的域名或服务器IP location / { root /var/www/html; index index.html; } # 提供 HLS 播放列表(可选) location /hls { types { application/vnd.apple.mpegurl m3u8; video/mp2t ts; } root /tmp; add_header Cache-Control no-cache; } }} 启动 Nginx 服务:
sudo nginx 现在你可以使用 OBS Studio 等推流软件,设置推流地址为:
rtmp://你的服务器IP/live/stream1
然后用 VLC 播放器打开网络串流,输入:
rtmp://你的服务器IP/live/stream1
如果看到画面,恭喜你!你已经成功搭建了一个基于 Nginx 虚拟主机 的 流媒体服务器。
通过本教程,你已经掌握了如何利用 Nginx 虚拟主机 搭建一个简易的 RTMP 直播 平台。无论是用于个人项目、教学演示还是小型直播业务,这都是一个低成本、高性能的解决方案。希望你能在此基础上继续探索更多 Nginx配置教程 中的高级功能!
关键词:Nginx虚拟主机, 流媒体服务器, RTMP直播, Nginx配置教程
本文由主机测评网于2025-12-01发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://vpshk.cn/2025121633.html