Nginx编译安装

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx编译安装相关的知识,希望对你有一定的参考价值。

  1. 下载所需安装文件

    #cd /usr/local/src/     放到源码目录下

    #wget http://10.115.241.24/files/1095000005425BAC/nginx.org/download/nginx-1.8.1.tar.gz 

    #wget http://ftp.exim.llorien.org/pcre/pcre-8.38.zip

    #yum install -y zlib-devel

2. 解压

  # tar -zxvf nginx-1.8.1.tar.gz

  # unzip pcre-8.38.zip

3. 编译(要安照顺序来)

 1)编译pcre

 # cd /usr/local/src/pcre-8.38

 # ./configure --prefix=/usr/local/pcre

 2)安装zilb

 # zilb已经在上面用YUM安装完成,记住是zlib-devel 不是zlib

 3)安装nginx

 #cd /usr/local/src/nginx-1.8.1

 #./configure --prefix=/usr/local/nginx18 --with-pcre=/usr/pcre-8.38

 configure成功截图,里面会显示相关信息,包括pid、log等文件位置

 技术分享

 # make

 make成功截图

 技术分享

 #make install

 make install成功截图技术分享

 开机启动

 #vi /etc/init.d/nginx

将下面代码复制到vi编辑器里,或者直接下载附件http://down.51cto.com/data/2208322中的文件,注意要修改成你的安装路径,默认是 /usr/local/nginx/sbin/ 

NAME=nginx 

NGINX_BIN=/usr/local/nginx/sbin/$NAME 

CONFIGFILE=/usr/local/nginx/conf/$NAME.conf 

PIDFILE=/usr/local/nginx/logs/$NAME.pid

#! /bin/sh
# chkconfig: 2345 55 25
# Description: Startup script for nginx webserver on Debian. Place in /etc/init.d and
# run ‘update-rc.d -f nginx defaults‘, or use the appropriate command on your
# distro. For CentOS/Redhat run: ‘chkconfig --add nginx‘

### BEGIN INIT INFO
# Provides:          nginx
# Required-Start:    $all
# Required-Stop:     $all
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: starts the nginx web server
# Description:       starts nginx using start-stop-daemon
### END INIT INFO

# Author:   licess
# website:  http://lnmp.org

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
NAME=nginx
NGINX_BIN=/usr/local/nginx/sbin/$NAME
CONFIGFILE=/usr/local/nginx/conf/$NAME.conf
PIDFILE=/usr/local/nginx/logs/$NAME.pid

case "$1" in
    start)
        echo -n "Starting $NAME... "

        if netstat -tnpl | grep -q nginx;then
            echo "$NAME (pid `pidof $NAME`) already running."
            exit 1
        fi

        $NGINX_BIN -c $CONFIGFILE

        if [ "$?" != 0 ] ; then
            echo " failed"
            exit 1
        else
            echo " done"
        fi
        ;;

    stop)
        echo -n "Stoping $NAME... "

        if ! netstat -tnpl | grep -q nginx; then
            echo "$NAME is not running."
            exit 1
        fi

        $NGINX_BIN -s stop

        if [ "$?" != 0 ] ; then
            echo " failed. Use force-quit"
            exit 1
        else
            echo " done"
        fi
        ;;

    status)
        if netstat -tnpl | grep -q nginx; then
            PID=`pidof nginx`
            echo "$NAME (pid $PID) is running..."
        else
            echo "$NAME is stopped"
            exit 0
        fi
        ;;

    force-quit)
        echo -n "Terminating $NAME... "

        if ! netstat -tnpl | grep -q nginx; then
            echo "$NAME is not running."
            exit 1
        fi

        kill `pidof $NAME`

        if [ "$?" != 0 ] ; then
            echo " failed"
            exit 1
        else
            echo " done"
        fi
        ;;

    restart)
        $0 stop
        sleep 1
        $0 start
        ;;

    reload)
        echo -n "Reload service $NAME... "

        if netstat -tnpl | grep -q nginx; then
            $NGINX_BIN -s reload
            echo " done"
        else
            echo "$NAME is not running, can‘t reload."
            exit 1
        fi
        ;;

    configtest)
        echo -n "Test $NAME configure files... "

        $NGINX_BIN -t
        ;;

    *)
        echo "Usage: $0 {start|stop|force-quit|restart|reload|status|configtest}"
        exit 1
        ;;

esac


 给启动脚本执行权限

 #chmod a+x /etc/init.d/nginx

 启动nginx

 #/etc/init.d/nginx start

 技术分享


附件下载:

http://down.51cto.com/data/2208322


参考:

http://blog.sina.com.cn/s/blog_740ccd040101fogt.html

http://dngood.blog.51cto.com/446195/623925/


本文出自 “悟透的杂货铺” 博客,请务必保留此出处http://wutou.blog.51cto.com/615096/1759147

以上是关于Nginx编译安装的主要内容,如果未能解决你的问题,请参考以下文章

源码编译三部曲(以nginx示例)

源码编译三部曲(以nginx示例)

Nginx编译安装

云计算days7----编译安装nginx

安装nginx的时候,是怎么编译老出错啊

从nginx的编译安装,了解编译安装原理(转)