美文网首页
nignx 编译安装

nignx 编译安装

作者: 晨曦_zdq | 来源:发表于2022-06-24 16:42 被阅读0次
      groupadd -r nginx && useradd -r -g nginx -s /bin/false -M nginx
    
    ./configure --prefix=/usr/local/nginx \
        --with-http_stub_status_module \
        --user=nginx --group=nginx \
        --error-log-path=/var/log/nginx/error.log \
        --http-log-path=/var/log/nginx/access.log \
        --pid-path=/var/run/nginx.pid \
        --with-pcre \
        --with-http_ssl_module \
        --without-mail_pop3_module \
        --without-mail_imap_module \
        --with-http_gzip_static_module \
        --with-stream
    

    报错1: ./configure: error: C compiler cc is not found
    apt install gcc
    报错2: ./configure: error: the HTTP rewrite module requires the PCRE library.
    apt install libpcre3-dev
    报错3: ./configure: error: SSL modules require the OpenSSL library.
    apt install libssl-dev
    报错4: ./configure: error: the HTTP gzip module requires the zlib library.
    apt install zlib1g-dev

    apt install make
    make && make install
    

    脚本

    #!/bin/bash
    # nginx source make install by taxue
    # 2021-12-28 v1.0
    
    nginx_url='https://nginx.org/download/nginx-1.20.2.tar.gz'
    nginx_bao=${nginx_url##*/}
    bao_dir='/usr/local/src'
    
    ping -c 1 -i.2 www.baidu.com
    if [ $? -ne 0 ];then
            echo "网络不通,请检查网络!"
            exit 100
    fi
    
    [ -f ${bao_dir}/${nginx_bao} ] || wget $nginx_url -P $bao_dir/
    cd $bao_dir
    tar -xzvf $nginx_bao
    cd `echo $nginx_url |awk -F'/' '{print $NF}' | awk -F'.tar' '{print $1}'`
    
    id nginx || useradd -r  -s /bin/false -M nginx
    
    apt update
    apt -y install make gcc libpcre3-dev libssl-dev zlib1g-dev
    
    ./configure --prefix=/usr/local/nginx \
        --with-http_stub_status_module \
        --user=nginx --group=nginx \
        --error-log-path=/var/log/nginx/error.log \
        --http-log-path=/var/log/nginx/access.log \
        --pid-path=/var/run/nginx.pid \
        --with-pcre \
        --with-http_ssl_module \
        --without-mail_pop3_module \
        --without-mail_imap_module \
        --with-http_gzip_static_module \
        --with-stream
    make && make install
    
    # system 服务管理
    # 注意nginx二进制文件和配置文件位置
    echo '[Unit]
    Description=nginx - high performance web server
    Documentation=https://nginx.org/en/docs/
    After=network-online.target remote-fs.target nss-lookup.target
    Wants=network-online.target
    
    [Service]
    Type=forking
    PIDFile=/var/run/nginx.pid
    ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
    ExecReload=/bin/sh -c "/bin/kill -s HUP $(/bin/cat /var/run/nginx.pid)"
    ExecStop=/bin/sh -c "/bin/kill -s TERM $(/bin/cat /var/run/nginx.pid)"
    
    [Install]
    WantedBy=multi-user.target' > /lib/systemd/system/nginx.service
    
    systemctl daemon-reload
    systemctl start nginx
    curl localhost:80
    

    相关文章

      网友评论

          本文标题:nignx 编译安装

          本文链接:https://www.haomeiwen.com/subject/stipqrtx.html