Nginx服务器安装

Nginx服务器搭建

Linux服务器下操作:

下载nginx ​ wget nginx.org/download/ng…

解压

$tar -xvf nginx-1.15.3.tar.gz	
复制代码

下载nginx rtmp模块 ​ wget codeload.github.com/arut/nginx-…

解压

$tar -xvf v1.2.1  
复制代码

进入nginx目录

$cd nginx-1.15.3
复制代码

执行:

#--add-module 指向rtmp模块目录
./configure --prefix=./bin --add-module=../nginx-rtmp-module-1.2.1
复制代码

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

blog.youkuaiyun.com/z920954494/…

执行完后会在 nginx目录下生成 MakeFile文件, cd nginx-1.15.3 后,执行

$make install
复制代码

生成 /bin 目录,查看bin目录下的 ./bin/conf/

这个nginx.conf 文件配置其实是不支持 RTMP服务的, 需要替换成nginx-rtmp-module-1.2.1下的nginx.conf 的文件,在此基础上稍作修改,bin目录下的 nginx.conf 做备份

$mv nginx.conf  nginx.conf.bak
复制代码

拷贝./nginx-rtmp-module-1.2.1/test/nginx.conf 到 ./nginx-1.15.3/bin/conf 目录下

$cd nginx-rtmp-module-1.2.1/test
$cp nginx.conf /root/live/nginx-1.15.3/bin/conf/
复制代码

查看修改nginx.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;
      	   #丢弃闲置5秒的连接
           drop_idle_publisher 5s;
        }
    }
}
http {
    server {
        #注意端口的占用
        listen 8080;
        location /stat {
            rtmp_stat all;
            rtmp_stat_stylesheet stat.xsl;
        }
        location /stat.xsl {
      		#修改为自己nginx-rtmp-module-1.2.1的路径
            root /root/live/nginx-rtmp-module-1.2.1/;
        }
        location /control {
            rtmp_control all;
        }
        location /rtmp-publisher {
      		#修改为自己nginx-rtmp-module-1.2.1的路径
            root /root/live/nginx-rtmp-module-1.2.1/test;
        }
        location / {
            #修改为自己nginx-rtmp-module-1.2.1的路径
            root /root/live/nginx-rtmp-module-1.2.1/test/www;
        }
    }
}
复制代码

以上配置中查看端口是否占用:

$lsof -i:8080
$lsof -i:1935
复制代码

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

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

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

以上需要添加nginx指定的两个端口:我这里配置的1935、8080。配置完成后,就可以启动nginx了

到nginx根目录下执行 :

$./bin/sbin/nginx  #启动服务
$./bin/sbin/nginx -s stop #停止服务
复制代码

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

bin/sbin/nginx -s stop 停止

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

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

nginx: [emerg] open() "/root/live/bin/logs/error.log" failed (2: No such file or directory)
复制代码

启动服务后打开浏览器 ,在浏览器中输入 :

【IP】:8081

能访问就表示配置完成了

之前在此遇到403 forbidden, 在 nginx.conf 下第一行添加 user root;问题解决

至此服务器配置完成。

测试推流

下载 推流软件 OBS,配置好相关设置,可自行百度

在来源里添加显示捕捉,然后点击 开始录制, 开始推流:

可在浏览器中看到多出来一条test的流数据,正是我推送的:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值