2019-7-23lesson

Jul 23, 2019

记录设置Centos7 Nginx 制作一个简单的点播服务

起因:当前nginx 版本是1.17.1, 想增加nginx-rtmp-module,找不到configure 文件,所以打算降版本。

删除CentOS 上的Nginx
systemctl nginx stop
删除Nginx 的自动启动
centos6:语法
chkconfig nginx off
centos7:语法
systemctl disable nginx.service

从源头删除nginx
rm -rf /usr/sbin/nginx
rm -rf /etc/nginx
rm -rf /etc/init.d/nginx

在使用yum 清理
yum remove nginx

下载nginx-rtmp-module
cd /root/download
git clone https://github.com/arut/nginx-rtmp-module.git
wget http://nginx.org/download/nginx-1.10.3.tar.gz
tar -zxvf nginx-1.10.3.tar.gz
cd nginx-1.10.3

设置并install
./configure --add-module=${刚下载的路径}/nginx-rtmp-module --with-http_ssl_module
make && make install

此时nginx 已经在 /usr/local/nginx

设置source:
vim /etc/profile.d/nginx.sh

添加一下内容

export NGINX_HOME=/usr/local/nginx
export PATH=$NGINX_HOME/sbin:$PATH

保存后使配置生效:

source /etc/profile

测试一下:nginx -V 输出了:

1
2
3
4
5
nginx version: nginx/1.10.3
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC)
built with OpenSSL 1.0.2k-fips 26 Jan 2017
TLS SNI support enabled
configure arguments: --add-module=/root/download/nginx-rtmp-module/ --with-http_ssl_module

使其在Centos7 systemctl 可以使用

vim /usr/lib/systemd/system/nginx.service

输入文件内容:

1
2
3
4
5
6
7
8
9
10
11
12
[Unit]
Description=nginx - high performance web server
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop

[Install]
WantedBy=multi-user.target

设置开机自启动: systemctl enable nginx.service

查看所有服务: systemctl list-units --type=service

1
2
3
4
5
6
7
8
9
10
11
12
13
rtmp {
server {
listen 1935;
chunk_size 4096;

application vod {
play /opt/video/vod;
}
}
}
http {
...
}

然后就可以使用: rtmp://ip/vod/1.mp4 点击查看啦

参考1
参考2

Nginx-http-flv-module

昨天玩了Nginx-rtmp-module,但是指定路径是: rtmp://ip/vod/1.mp4 需要使用ip。这样就很low 了,简直拿不出去手(直接使用ip 还是挺不自由的)

当前我的ip 都是挂在Cloudflare 上。

那是不是可以: rtmp://www.baidu.com:1935/vod/1.mp4 -> rtmp://www.baidu.com:80/vod/1.mp4 这样呢??

参考1
参考2
参考3