linux下搭建nginx服务

Posted on 2021-09-08 23:16  枫小子z  阅读(481)  评论(0)    收藏  举报

linux下搭建nginx服务

1. 下载并安装nginx
  1. 下载nginx
    wget http://nginx.org/download/nginx-1.18.0.tar.gz
    
  2. 安装nginx
    1. 安装nginx所需的依赖
      yum install -y gcc zilb zlib-devel openssl openssl-devel pcre pcre-devel
      
    2. 解压并安装nginx
      # 解压nginx
      tar -zxvf nginx-1.18.0.tar.gz
      # 进入到安装目录
      cd nginx-1.18.0
      # 配置
      ./configure --prefix=/usr/local/nginx
      # 安装nginx
      make && make install
      
2. 配置nginx
  1. 在linux系统下增加nginx服务
    1. /etc/init.d/文件下创建nginx文件,并写入以下内容
      1. 创建文件
        vim nginx
        
      2. 写入以下内容
        #!/bin/sh
        # nginx - this script starts and stops the nginx daemin
        #
        # chkconfig:   - 85 15
        
        # description:  Nginx is an HTTP(S) server, HTTP(S) reverse \
        #               proxy and IMAP/POP3 proxy server
        
        # processname: nginx
        # config:      /usr/local/nginx/conf/nginx.conf
        # pidfile:     /usr/local/nginx/logs/nginx.pid
        
        # Source function library.
        
        . /etc/rc.d/init.d/functions
        
        # Source networking configuration.
        
        . /etc/sysconfig/network
        
        # Check that networking is up.
        
        [ "$NETWORKING" = "no" ] && exit 0
        
        nginx="/usr/local/nginx/sbin/nginx"
        
        prog=$(basename $nginx)
        
        NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf"
        
        lockfile=/var/lock/subsys/nginx
        
        start() {
        
        	[ -x $nginx ] || exit 5
        
        	[ -f $NGINX_CONF_FILE ] || exit 6
        
        	echo -n $"Starting $prog: "
        
        	daemon $nginx -c $NGINX_CONF_FILE
        
        	retval=$?
        
        	echo
        
        	[ $retval -eq 0 ] && touch $lockfile
        
        	return $retval
        
        }
        
        
        stop() {
        
        	echo -n $"Stopping $prog: "
        
        	killproc $prog -QUIT
        
        	retval=$?
        
        	echo
        
        	[ $retval -eq 0 ] && rm -f $lockfile
        
        	return $retval
        
        }
        
        
        
        restart() {
        
        	configtest || return $?
        
        	stop
        
        	start
        
        }
        
        
        reload() {
        
        	configtest || return $?
        
        	echo -n $"Reloading $prog: "
        
        	killproc $nginx -HUP
        
        	RETVAL=$?
        
        	echo
        
        }
        
        force_reload() {
        
        	restart
        
        }
        
        
        configtest() {
        
          $nginx -t -c $NGINX_CONF_FILE
        
        }
        
        
        
        rh_status() {
        
        	status $prog
        
        }
        
        
        rh_status_q() {
        
        	rh_status >/dev/null 2>&1
        
        }
        
        case "$1" in
        
        	start)
        
        		rh_status_q && exit 0
        		$1
        		;;
        
        	stop)
        
        
        		rh_status_q || exit 0
        		$1
        		;;
        
        	restart|configtest)
        		$1
        		;;
        
        	reload)
        		rh_status_q || exit 7
        		$1
        		;;
        
        
        	force-reload)
        		force_reload
        		;;
        	status)
        		rh_status
        		;;
        
        
        	condrestart|try-restart)
        
        		rh_status_q || exit 0
        			;;
        
        	*)
        
        		echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
        		exit 2
        
        esac
        
      3. 赋予nginx执行权限并在后台增加nginx服务
        1. 为nginx增加可执行权限
          chmod 755 /etc/init.d/nginx
          
        2. 在后台增加nginx服务
          chkconfig --add /etc/init.d/nginx
          
      4. 启动nginx
        systemctl start nginx.service
        
      5. 查看nginx服务状态
        systemctl status nginx.service