nginx流媒体服务器搭建
Nginx 是一个高性能的 Web 和反向代理服务器:
- 作为 Web 服务器
- 作为负载均衡服务器
- 作为邮件代理服务器
这些都是ngnix的基本功能,下面我就以公司项目中的视频直播服务器的搭建过程,简单的介绍一下:
1.服务器
首先你要有一个远程云服务器,我自己的是京东云服务器,并按照官方的文档进行配置,一定记号自己的配置时候的密码与账号。
2.辅助软件
下载xftp与xhsell5,xftp是与远程服务器及你选哪个文件的上传与下载,在进行相关的文件操作后,可以查看自己操作的文件是否上传与下载成功,可以直观查看操作后的结果,我给大家一个xftp链接,xshell5链接需要的可以直接点击下载。
3.下面计入正式的搭建
1.安装ngnix
1>.在xshell中建立相应的目录,并cd到你自己的目录下,
2>.在此目录下进行解压,解压 tar -xzf nginx-1.12.1.tar.gz
前提是你的ubuntu的环境里已安装gcc,首先进行gcc验证,输入命令 gcc -v,出现以下内容:
若是出现commend not found之类的代表你的环境里面没有正确安装的gcc,你要接下来进行安装gcc,一定安装正确,上一次这个配置整的两天没有编译正确,这是个一大坑,这怎么能难住攻城师呐
正确安装的gcc的正确姿势,要记好啊:
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-4.7
sudo apt-get install g++-4.7
cd /usr/bin/ ; ls -al | grep gcc
sudo ln -s gcc-4.7 gcc
2.安装OpenSl
1>.在上步目录下下载,
wget https://github.com/openssl/openssl/archive/OpenSSL_1_1_0f.tar.gz
2>.进行解压
tar -xzf OpenSSL_1_1_0f.tar.gz
3>.编译opensll
进入openssl目录
1 新建一个bin目录
2 执行
./config –prefix=pwd
/bin
如下内容:
执行命令后出现如下内容:
3执行
make install
如下内容:
4 回到Nginx目录下
cd到auto/lib/openssl/conf
修改cof文件
修改如下内容
if [ $ngx_found = no ]; then
# 自己加入一行判断 一定要是自己编译出来的路径
ngx_feature="OpenSSL library in /root/nginx/openssl-OpenSSL_1_1_0f/bin/include"
ngx_feature_path="/root/nginx/openssl-OpenSSL_1_1_0f/bin/include"
if [ $NGX_RPATH = YES ]; then
ngx_feature_libs="-R/root/nginx/openssl-OpenSSL_1_1_0f/bin/lib -L/root/nginx/openssl-OpenSSL_1_1_0f/bin/lib -lssl -lcrypto $NGX_LIBDL"
else
ngx_feature_libs="-L/root/nginx/openssl-OpenSSL_1_1_0f/bin/lib -lssl -lcrypto $NGX_LIBDL"
fi
如图:
回到nginx目录下:
sudo apt-get install build-essential libpcre3 libpcre3-dev libssl-dev
./configure --prefix=`pwd`/bin --add-module=/usr/local/ngnix/nginx-rtmp-module-1.2.0
make install
Make之后 会多一个bin目录 就代表成功了
来到这个目录
执行
./nginx
至此,ngnix流媒体服务器搭建完毕,可能过程中出现如下错误,也不要惊慌,我给大家已准备良药:
出现如下错误:
error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory
在vim /etc/ld.so.conf
加入
/root/nginx/openssl-OpenSSL_1_1_0f/bin/lib
Ldconfig 运行刚刚的配置
source
如果开启了 先关闭nginx服务器
修改配置
将nginx-rtmp-module/test/下的nginx.conf 复制到 nginx/bin/conf下面
当前在nginx-rtmp-module/test/目录下执行
cp nginx.conf /root/nginx/nginx-1.12.1/bin/conf/