Nginx篇--Nginx源码搭建

Nginx安装步骤:

1.依赖 gcc openssl-devel pcre-devel zlib-devel     安装:yum install gcc openssl-devel pcre-devel zlib-devel -y 2. 安装Nginx ./configure 3. make && make install 默认安装目录: /usr/local/nginx 4.配置Nginx为系统服务,以方便管理 1、在/etc/rc.d/init.d/目录中建立文本文件nginx   2、在文件中粘贴下面的内容:

#!/bin/sh
#
# nginx - this script starts and stops the nginx daemon
#
# chkconfig:   - 85 15 
# description:  Nginx is an HTTP(S) server, HTTP(S) reverse \
#               proxy and IMAP/POP3 proxy server
# processname: nginx
# config:      /etc/nginx/nginx.conf
# config:      /etc/sysconfig/nginx
# pidfile:     /var/run/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"
 
[ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx
 
lockfile=/var/lock/subsys/nginx
 
make_dirs() {
   # make required directories
   user=`nginx -V 2>&1 | grep "configure arguments:" | sed 's/[^*]*--user=\([^ ]*\).*/\1/g' -`
   options=`$nginx -V 2>&1 | grep 'configure arguments:'`
   for opt in $options; do
       if [ `echo $opt | grep '.*-temp-path'` ]; then
           value=`echo $opt | cut -d "=" -f 2`
           if [ ! -d "$value" ]; then
               # echo "creating" $value
               mkdir -p $value && chown -R $user $value
           fi
       fi
   done
}
 
start() {
    [ -x $nginx ] || exit 5
    [ -f $NGINX_CONF_FILE ] || exit 6
    make_dirs
    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
    sleep 1
    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文件的执行权限    chmod +x nginx 4、添加该文件到系统服务中去  chkconfig --add nginx     查看是否添加成功     chkconfig --list nginx 启动,停止,重新装载 service nginx start|stop

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏晓晨的专栏

CentOS 7 源码编译安装 Nginx

https://www.cnblogs.com/visec479/p/5145624.html

1473
来自专栏Pythonista

centos7 install python3.7 with problem and how to fix it.

<!-- p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #000000; ...

1743
来自专栏乐沙弥的世界

WSREP has not yet prepared node for application use

最近PXC 5.7出现脑裂,前端Navicate连接到MySQL时,提示WSREP has not yet prepared node for applicat...

3163
来自专栏散尽浮华

介绍linux下利用编译bash设置root账号共用的权限审计设置

在日常运维工作中,公司不同人员(一般是运维人员)共用root账号登录linux服务器进行维护管理,在不健全的账户权限审计制度下,一旦出现问题,就很难找出源头,甚...

2188
来自专栏乐沙弥的世界

vmware server FileNotFound: A file was not found

在使用vmware server时,创建data store,提示FileNotFound: A file was not found,折腾了很久,原来都是权限...

862
来自专栏Android机器圈

Mac关机时处于黑屏状态

PS:不知道大家有没有遇到过mac电脑关机就黑屏,只有一个箭头,还可以滑动箭头,但就是黑屏状态,等个好长时间还是关不了机,因此我查了好多资料,原因是在关机时,m...

3879
来自专栏battcn

一起来学SpringBoot | 第十三篇:RabbitMQ延迟队列

初探RabbitMQ消息队列中介绍了 RabbitMQ的简单用法,顺带提及了下延迟队列的作用。所谓 延时消息就是指当消息被发送以后,并不想让消费者立即拿到消息,...

3311
来自专栏运维小白

10.25 systemd管理服务

Linux系统服务管理-systemd systemctl list-units --all --type=service 几个常用的服务相关的命令 syste...

2037
来自专栏小樱的经验随笔

【亲测有效】Centos安装完成docker后启动docker报错docker: unrecognized service的两种解决方案

一直停留在以上步骤,如果有遇到和我一样类似问题的小伙伴可以按照如下方法进行安装,即可安装成功~~

5252
来自专栏木木玲

Netty in action ——— 事件循环 和 线程模式

2413

扫码关注云+社区

领取腾讯云代金券