前言*随着Nginx大量被各互联网公司使用,常见的Nginx用来做反向代理WEB服务器、缓存服务器,nginx应用很广泛,今天我们来研究一下使用Nginx架设高性能流媒体服务器

一、系统环境

系统版本:CentOS 5.8x86_64
Nginx版本: Nginx-1.4.2.tar.gz
Yamdi版本:Yamdi-1.9.tar.gz

二、自动化安装

Linux采用自动化安装非常便捷,快速,而且这也每个Linux SA必须掌握的,直接上代码,欢迎大家提更好的意见,让脚本更有实用性。

#!/bin/sh
#Auto Make Install Nginx FLV MP4 Server
#系统版本:CentOS 5.8 x86_64
#Nginx版本: Nginx-1.4.2.tar.gz
#Yamdi版本:Yamdi-1.9.tar.gz
#Define Path
SRC_DIR=/usr/src
NGX_DIR=/usr/local/nginx/
CODE=0
SOFT_URL=(
                                                                           
    http://nginx.org/download/nginx-1.4.2.tar.gz
                                                                           
    http://downloads.sourceforge.net/project/yamdi/yamdi/1.9/yamdi-1.9.tar.gz
                                                                           
    http://chinaapp-wordpress.stor.sinaapp.com/uploads/2013/08/player.swf
                                                                           
)
if
    [ $UID  -ne $CODE ];then
    echo "Must to be use Root Exec Shell ......"
    exit 0
                                                                          
fi
for i  in  `echo ${SOFT_URL[0]} ${SOFT_URL[1]} ${SOFT_URL[2]} `
                                                                        
    do
                                                                           
    cd  $SRC_DIR  ;wget $i
                                                                           
    if
        [ "$?" == "$CODE" ];then
                                                                           
        echo "---------The $i Soft Download Success ! "
                                                                           
    else
                                                                             
        echo "---------The $i Soft Download Success ! "
                                                                        
    fi
                                                                          
done
#Nginx install Include Flv Mp4
cd  $SRC_DIR ; tar -xzf  nginx-1.4.2.tar.gz ;cd nginx-1.4.2 && ./configure  --prefix=/usr/local/nginx --with-http_gzip_static_module  --with-http_stub_status_module  --with-http_flv_module --with-http_mp4_module && make &&make install
if
    [ "$?" == "$CODE" ];then
    echo "The Nginx  Make install Success ! "
else
    echo "The Nginx  Make install Failed ! "
fi
#Install  Yamdi Tools
    cd  $SRC_DIR ; tar -xzf  yamdi-1.9.tar.gz ;cd yamdi-1.9/ &&make &&make install
#Config Nginx Service And Flv
    cp  wugk.mp4 player.swf  /usr/local/nginx/html/
                                                                            
    /usr/local/bin/yamdi -i 51cto.mp4 -o wugk.mp4
    grep -E "(flv|mp4)" $NGX_DIR/conf/nginx.conf
    [ $?  -eq  $CODE ]&&sed -i '46c \\tlocation ~ \.flv$ {\n\tflv;\n\t}\n\tlocation ~ \.mp4$ {\n\tmp4;\n\t}' /usr/local/nginx/conf/nginx.conf
                                                                           
#start Nginx service
    $NGX_DIR/sbin/nginx -t
    [ $?  -eq  $CODE ]&&/usr/local/nginx/sbin/nginx
    IP=`ifconfig eth0|grep "Bcast" |awk -F":" '{print $2}'|cut -d" " -f 1`
    echo "All Config Successful , You Can Use http://$IP/player.swf?type=http&file=wugk.mp4 to access nginx flv server !!"
    exit 1

三、测试验证

(1)、脚本执行效果:

Nginx架设高性能流媒体服务器_第1张图片

(2)、视频访问效果:

Nginx架设高性能流媒体服务器_第2张图片