ubuntu 系统安装nginx记录

sudo apt-get install gcc

sudo apt-get install libpcre3 libpcre3-dev

sudo apt-get install zlib1g zlib1g-dev

sudo apt-get install openssl

sudo apt-get install libssl-dev

cd /opt

mkdir nginx

cd nginx

wget https://nginx.org/download/nginx-1.18.0.tar.gz

tar -zvxf nginx-1.18.0.tar.gz

cd nginx-1.18.0

sudo ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

sudo make

sudo make install

cd /usr/local/nginx/sbin

启动nginx

sudo ./nginx

停止nginx

sudo /usr/local/nginx/sbin/nginx -s stop

#设置开机启动

sudo 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

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

# 给所有用户给予可执行权限

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

启动

/etc/init.d/nginx start

停止

/etc/init.d/nginx stop

重新加载配置

/etc/init.d/nginx reload

添加至开机自启动

设置开机启动

sudo update-rc.d nginx defaults

启动 Nginx

sudo /etc/init.d/nginx start

取消开机启动

sudo update-rc.d -f nginx remove

相关推荐
liuyao_xianhui30 分钟前
版本控制器git--gdb/cgdb
linux·运维·服务器·git
CS_浮鱼31 分钟前
【Linux进阶】mmap实战:文件映射、进程通信与LRU缓存
linux·运维·c++·缓存
chuxinweihui1 小时前
应用层协议 HTTP
linux·服务器·网络·网络协议·http
全息数据1 小时前
WSL2 中将 Ubuntu 20.04 升级到 22.04 的详细步骤
深度学习·ubuntu·wsl2
xu_yule1 小时前
Linux_16(多线程)信号量+基于环形队列的生成消费模型+自选锁+读写锁
linux·运维·服务器
4t4run2 小时前
25、Linux 特殊权限
linux·运维
氵文大师3 小时前
A机通过 python -m http.server 下载B机的文件
linux·开发语言·python·http
HUT_Tyne2653 小时前
Linux 快速入门
linux·运维·服务器
leoufung3 小时前
逆波兰表达式 LeetCode 题解及相关思路笔记
linux·笔记·leetcode
鸠摩智首席音效师3 小时前
如何在 Linux 中使用 dd 命令 ?
linux·运维·服务器