windows server 2016 搭建nginx-rtmp 推流服务
1.搭建 nginx-rtmp
下载 nginx-rtmp-http-flv-master。
参考:https://blog.csdn.net/KayChanGEEK/article/details/105098588
2.在服务器上运行会遇到nginx.exe 运行时候出现应用程序运行不起来
需要 下载Msvcr100.dll放到sys32和sys64中
参考:http://t.zoukankan.com/fensnote-p-13436479.html
config配置
worker_processes 1; error_log logs/error.log debug; events { worker_connections 1024; } rtmp { out_queue 4096; out_cork 8; max_streams 128; timeout 15s; drop_idle_publisher 15s; log_interval 5s; #log模块在access.log中记录日志的间隔时间,对调试非常有用 log_size 1m; #log模块用来记录日志的缓冲区大小 server { listen 1935; chunk_size 4000; application live { live on; gop_cache on ; #打开GOP缓存,减少首屏等待时间 ### 保存视频/start #record video; #记录直播视频 } application hls { live on; hls on; hls_path temp/hls; hls_fragment 8s; } } } http { include mime.types; default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # '$status $body_bytes_sent "$http_referer" ' # '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; server { listen 9000; location / { root htmlVieo; } location /stat { rtmp_stat all; rtmp_stat_stylesheet stat.xsl; } location /stat.xsl { root htmlVieo; } location /live { flv_live on ; # 打开HTTP播放FLV直播流功能 chunked_transfer_encoding on ; # 支持'Transfer-Encoding: chunked'方式回复 add_header 'Access-Control-Allow-Origin' '*'; # 添加额外的HTTP头 add_header 'Access-Control-Allow-Credentials' 'true'; # 添加额外的HTTP头 expires -1; } location /hls { # 指定允许跨域的方法,*代表所有 add_header Access-Control-Allow-Methods *; # 预检命令的缓存,如果不缓存每次会发送两次请求 add_header Access-Control-Max-Age 3600; # 带cookie请求需要加上这个字段,并设置为true add_header Access-Control-Allow-Credentials true; # 表示允许这个域跨域调用(客户端发送请求的域名和端口) # $http_origin动态获取请求客户端请求的域 不用*的原因是带cookie的请求不支持*号 add_header Access-Control-Allow-Origin $http_origin; # 表示请求头的字段 动态获取 add_header Access-Control-Allow-Headers $http_access_control_request_headers; # OPTIONS预检命令,预检命令通过时才发送请求 # 检查请求的类型是不是预检命令 if ($request_method = OPTIONS){ return 200; } #server hls fragments types{ application/vnd.apple.mpegurl m3u8; video/mp2t ts; } alias temp/hls; expires -1; } } server { listen 10001; server_name localhost; #root C:/web发布/dist/; location / { root html; index index.html index.htm; } location @router { rewrite ^.*$ /index.html last; } location ^~/api/ { proxy_set_header Host $host; proxy_set_header x-forwarded-for $remote_addr; proxy_set_header X-Real-IP $remote_addr; proxy_pass http://127.0.0.1:10000/; #实际的接口地址 } location ^~/sys/ { proxy_set_header Host $host; proxy_set_header x-forwarded-for $remote_addr; proxy_set_header X-Real-IP $remote_addr; proxy_pass http://127.0.0.1:10000/; #实际的接口地址 } } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!