侧边栏
首页代码

Nginx服务器搭建

Nginx服务器搭建

Linux操作:

1、下载nginx

如图:

复制链接,然后在Linux下进行下载

​ wget http://nginx.org/download/nginx-1.15.3.tar.gz

解压

​ tar xvf nginx-1.15.3.tar.gz

2、下载nginx rtmp模块

在GitHub中搜索nginx-rtmp-module,找到评星最多的

一般下载releases版本的

​ wget https://codeload.github.com/arut/nginx-rtmp-module/tar.gz/v1.2.1

解压

​ tar xvf v1.2.1

解压后的目录

进入nginx目录

​ cd nginx-1.15.3

3、执行:

以上都解压后,先进入nginx-1.15.3,使用./configure --help查看帮助,其中常用的有两个参数,--prefix=--add-module=

  • --prefix=指的是:编译好之后,安装在那个目录
  • --add-module=指的是:开启一个外部模块,这里指的就是nginx-rtmp-module模块
#--add-module 指向rtmp模块目录
./configure --prefix=./bin --add-module=../nginx-rtmp-module-1.2.1

在这个过程中可能因为环境不同而出现不同错误,比如缺少pcre、openssl等,这时候就需要安装这些库。

https://blog.csdn.net/z920954494/article/details/52132125

如果执行上面博客的命令也报错,则需要apt换个源,如下图:

然后执行make install命令来安装

编译完成后,安装在当前目录的bin目录下。

进入bin目录有下面四个文件夹

  • conf 配置信息,配置服务器启动的一些脚本
  • html 提供的一个测试网页
  • logs 存放一些日子,如:启动服务器出现的错误,可以在这里查看错误
  • sbin 编译出来的可执行文件

4、cd bin/conf

vim nginx.conf 修改为:

user root;
worker_processes 1;
error_log logs/error.log debug;
events {
worker_connections 1024;
}
rtmp {
server {
#注意端口占用
listen 1935;
application myapp {
live on;
#丢弃闲置5s的连接
drop_idle_publisher 5s;
}
}
}
http {
server {
#注意端口占用
listen 8081;
location /stat {
rtmp_stat all;
rtmp_stat_stylesheet stat.xsl;
}
location /stat.xsl {
#注意目录
root /root/ffmpeg/nginx/nginx-rtmp-module-1.2.1/;
}
location /control {
rtmp_control all;
}
location /rtmp-publisher {
#注意目录
root /root/ffmpeg/nginx/nginx-rtmp-module-1.2.1/test;
}
location / {
#注意目录
root /root/ffmpeg/nginx/nginx-rtmp-module-1.2.1/test/www;
}
}
}

其实就是从 nginx-rtmp-module-1.2.1/test/nginx.conf中拷贝。

端口占用检查: lsof -i:8080

需要注意的是目录与端口是否被占用,比如我的8080端口被占用,我改为了8081,然后需要开放端口。

这是就可以在浏览器中打开http://192.168.3.86:8080/stat

然后使用EV录屏软件进行推流测试,

这时就可以刷新浏览器可以看到推流

在EVPlayer播放器中可以打开上面的推流

点击播放后,出现如下界面说明搭建的环境可以了

配置了iptables防火墙的翻下前面的资料,如果没安装的阿里云服务器可以进入阿里云控制台开放

阿里云控制台.png

然后点击配置规则,在新页面点击添加安全组规则,开放8081端口,然后确定,就可以了。

开放端口.png

配置完成后,就可以启动nginx了

在当前目录 执行 bin/sbin/nginx 即可启动

bin/sbin/nginx -s stop 停止

一定要在当前目录(nginx-1.15.3)启动,因为上面的配置 error_log logs/error.log debug; 会去执行命令的目录下查找 logs。

如果error_log 改成一个绝对路径 那就没关系了。

在浏览器输入【IP】:8081/start,能访问就表示配置完成了。此时一旦有播放器或者推流器链接到搭建的服务器刷新此界面就能够看到如下界面:(手机推流,ffplay、网页、potplayer播放)

image

posted @   咸鱼Jay  阅读(182)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· NetPad:一个.NET开源、跨平台的C#编辑器
· PowerShell开发游戏 · 打蜜蜂
· 凌晨三点救火实录:Java内存泄漏的七个神坑,你至少踩过三个!
页脚HTML代码
点击右上角即可分享
微信分享提示
电磁波切换