• nginx-1.12.0版本(编译安装)-自定义安装路径


    nginx-1.12.0版本(编译安装)-自定义安装路径

    安装路径:/application/nginx-1.12.0

    1.前期准备

    安装编译需要的gcc和gcc-c++

    yum install -y gcc gcc-c++

    nginx依赖

    pcre-devel、openssl-devel、zlib-devel

    yum install -y pcre pcre-devel openssl openssl-devel zlib zlib-devel

    创建用户nginx,以该用户的身份执行nginx

    useradd -s /bin/false -M nginx

    下载nginx源码包并解压到当前目录

    cd /tools

    wget http://nginx.org/download/nginx-1.12.0.tar.gz

    tar -zxf nginx-1.12.0.tar.gz

    2.nginx编译安装

    生成Makefile文件

    cd nginx-1.12.0

    ./configure --user=nginx --group=nginx --prefix=/application/nginx-1.12.0/ --with-http_v2_module --with-http_ssl_module --with-http_sub_module --with-http_stub_status_module --with-http_gzip_static_module --with-pcre

    编译源代码并安装

    make && make install

    3.后期结尾

    给nginx-1.12.0创建软链接去掉末尾的版本号

    ln -s /application/nginx-1.12.0/ /application/nginx

    添加环境变量

    创建nginx命令软链接到环境变量

    ln -s /application/nginx/sbin/* /usr/local/sbin/

    4.配置nginx开启健康检查

    下载模块

    cd /usr/local/src
    wget https://codeload.github.com/yaoweibin/nginx_upstream_check_module/zip/master
    unzip master
    cd /root/nginx/nginx-1.12.0/nginx-1.12.0

    打补丁
    patch -p1 < /usr/local/src/nginx_upstream_check_module-master/check_1.11.5+.patch

    预编译
    ./configure --prefix=/application/nginx-1.12.0/ --user=nobody --group=nobody --add-module=/usr/local/src/nginx_upstream_check_module-master/

    编译
    make

    配置文件
    upstream xxxxxx
    {
    server 172.17.1.164:8080;
    server 172.17.3.164:8080;
    check interval=2000 rise=2 fall=2 timeout=1000 type=http;
    check_http_send "HEAD / HTTP/1.0 ";
    check_http_expect_alive http_2xx http_3xx http_4xx;
    }

    其中参数的定义如下:

    interval:检查的周期

    fall:允许的检查失败次数,若失败次数超过该值,则后端被标记为"down"。

    rise:检查的成功次数达到该值,则后端被标记为“up”。

    timeout:检查的超时时间。

    type:后端检查的协议类型。


    开启后端存活状态页面,便于查看后端状态。
    location /status {
    check_status;
    access_log off;
    }

    查看健康状态
    http://xxx.xxx.xxx.xxx/status

    5.常用命令

    检查配置文件

    nginx -t

    指定其他配置文件启动nginx

    nginx -c /application/nginx/conf/nginx.conf.bak

    启动nginx

    nginx

    停止nginx

    nginx -s stop

    重启nginx

    nginx -s reload

    参数解释

    -s stop 快速停止nginx

    -s quit 平滑停止nginx

    -s reopen 重新打开日志文件

    -s reload 平滑重载所有配置

    6.目录介绍

     [root@www nginx]# tree

    .

    ├── conf  #配置文件目录

    │   ├── fastcgi.conf

    │   ├── fastcgi.conf.default

    │   ├── fastcgi_params

    │   ├── fastcgi_params.default  #fastcgi *配合php

    │   ├── koi-utf

    │   ├── koi-win

    │   ├── mime.types  #mime 媒体类型

    │   ├── mime.types.default

    │   ├── nginx.conf  #nginx主配置文件

    │   ├── nginx.conf.default

    │   ├── scgi_params

    │   ├── scgi_params.default

    │   ├── uwsgi_params

    │   ├── uwsgi_params.default

    │   └── win-utf

    ├── html  #默认站点目录

    │   ├── 50x.html

    │   └── index.html

    ├── logs  #访问日志、错误日志、pid文件目录

    │   ├── access.log  #访问日志

    │   ├── error.log  #错误日志

    │   └── nginx.pid  #pid文件

    └── sbin  #命令目录

    └── nginx  #nginx命令文件

  • 相关阅读:
    凡人修仙登录页面
    proxysql高可用~ keepalived+proxysql
    proxysql 系列 ~ 高可用架构
    mysql 案例 ~timeout相关问题与错误信息
    mysql 案例 ~ mysql字符集与大小写详解
    mysql案例~非常规操作汇总
    mysql原理~创建用户的那些事情
    mysql 案例 ~ 表空间迁移数据与数据导入
    开源统计数据库~行与列的讨论
    mysql 原理 ~ LRU 算法与buffer_pool
  • 原文地址:https://www.cnblogs.com/littlewrong/p/8192164.html
Copyright © 2020-2023  润新知