> CentOS > CentOS教程 >

centos6.7 x86_64安装nginx

nginx 1.9.5

#yum install gcc pcre-devel zlib-devel openssl-devel

#./configure --prefix=/usr/local/lnmp/nginx --with-openssl=/usr/lib64/openssl

#make && make install

#ulimit -SHn 65535

 

#vi /etc/profile.d/ulimit.sh

写入   ulimit -SHn 65535

保存

 

修改nginx.conf 中的相关基础配置  完成后 基础配置如下

user  nobody;
worker_processes  1;
error_log  logs/error.log;
pid        logs/nginx.pid;
worker_rlimit_nofile 65535;
events {
    use epoll;
    worker_connections  65535;
}

http {
    include       mime.types;
    default_type  application/octet-stream;
    
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
    #access_log  logs/access.log  main;

    sendfile        on;
    tcp_nopush     on;
    keepalive_timeout  0;
    gzip  on;

    server {
        listen       80;
        server_name  localhost;
        charset utf-8;
        access_log  logs/host.access.log  main;
        location / {
            root   html;
            index  index.html index.htm;
        }
        error_page  404              /404.html;
        location /404.html {
            root   html;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

 

添加 service 进程管理脚本

#vi /etc/init.d/nginx

#! /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

NAME=nginx
NGINX_BIN=/usr/local/lnmp/nginx/sbin/$NAME
CONFIGFILE=/usr/local/lnmp/nginx/conf/$NAME.conf
PIDFILE=/usr/local/lnmp/nginx/logs/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME

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)
                $SCRIPTNAME stop
                sleep 1
                $SCRIPTNAME 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: $SCRIPTNAME {start|stop|force-quit|restart|reload|status|configtest}"
                exit 1
        ;;

esac

 

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

#chkconfig --add nginx

#service nginx  ...

 

server debug 编译

./configure --prefix=/usr/local/lnmp/nginx --with-openssl=/usr/lib64/openssl  --with-http_ssl_module --with-http_v2_module --with-http_stub_status_module --with-ipv6 --with-http_image_filter_module --with-http_dav_module --with-http_degradation_module --with-http_secure_link_module --with-threads --with-debug
 
(责任编辑:IT)