1.Nginx安装

一.yum方式安装

  1.安装 pcre 依赖

http://www.rpmfind.net/linux/centos/7.9.2009/os/x86_64/Packages/pcre2-10.23-2.el7.x86_64.rpm

  2.安装

rpm -ivh pcre2-10.23-2.el7.x86_64.rpm

  3.nginx下载地址,最新版

http://nginx.org/packages/centos/7/x86_64/RPMS/

  4.安装 nginx

rpm -ivh nginx-1.24.0-1.el7.ngx.x86_64.rpm

  5.设置开放的端口号

firewall-cmd --add-service=http –permanent

firewall-cmd --add-port=80/tcp --permanent

  6.设置之后需要重启防火墙

firewall-cmd --reload

  7.访问 http://127.0.0.1/80

  8.默认值

/var/log/nginx/          #默认的日志文件目录 

/etc/nginx                  #默认配置文件存放的根目录 

/etc/nginx/nginx.conf  默认的主配置文件 

/usr/share/nginx/html 默认主静态页

二.常用命令

  1.查看版本

./nginx -v

  2.启动命

./nginx -s start

  3.关闭

./nginx -s stop

  4.重新加载

./nginx -s reload

  5.默认配置

server {
    listen 80;
    server_name 192.168.3.11;
    location / {
        root /usr/share/nginx/html;
        index index.html index.htm;
    }
}

三.反向代理

  1.反向代理实例1

    1) 实现效果

      打开浏览器,在浏览器地址栏输入地址 192.168.3.11,跳转到 www.baidu.com

    2) 配置

user  nginx;
worker_processes  auto;

error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;

events {
    worker_connections  1024;
}

http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;

    #tcp_nopush     on;
    keepalive_timeout  65;

    #gzip  on;

    server {
        listen 80;
        server_name 192.168.3.11;
        location / {
            root /usr/share/nginx/html;
            proxy_pass http://www.baidu.com;
            index index.html index.htm;
        }
    }

    include /etc/nginx/conf.d/*.conf;
}

  2.反向代理实例12

    1) 效果

        访问 http://192.168.17.129:9001/edu/ 直接跳转到 127.0.0.1:8080

        访问 http:// 192.168.17.129:9001/vod/ 直接跳转到 127.0.0.1:8081

    2) 配置

http {
    server {
        listen       80;
        server_name  localhost;
        location ~ /edu/ {
            proxy_pass 127.0.0.1:8080
        }
        location ~ /vod/ {
            proxy_pass 127.0.0.1:8081
        }
    }
}

四.负载均衡

  1.实现效果

    浏览器地址栏输入http://192.168.3.11/test,负载均衡效果平均5001和5002端口中

  2.配置

upstream testserver{
    server 192.168.2.4:5001;
    server 192.168.2.4:5002;
}
    server {
        listen 80;
        server_name 192.168.3.11;
    location / {
        root /usr/share/nginx/html;
        proxy_pass http://testserver;
        index index.html index.htm;
    }
}

  3.开启HTTP 访问

setsebool -P httpd_can_network_connect 1

  4.或者永久关闭SELinux,好像没成功过

修改/etc/sysconfig/selinux文件
SELINUX=disabled 后重启系统

  5.nginx 分配服务器策略

    1) 轮询(默认)

    2) weight

        weight 代表权重默认为 1,权重越高被分配的客户端越多

upstream testserver{
    server 192.168.2.4:5001 weight = 10;
    server 192.168.2.4:5002 weight = 10;
}

    3) ip_hash

        每个请求按访问 ip 的 hash 结果分配,这样每个访客固定访问一个后端服务器

upstream testserver{

    ip_hash;
    server 192.168.2.4:5001;
    server 192.168.2.4:5002;
}

    4) fair(第三方)

        按后端服务器的响应时间来分配请求,响应时间短的优先分配

upstream testserver{
    server 192.168.2.4:5001;
    server 192.168.2.4:5002;

    fair;
}

你可能感兴趣的:(Nginx,nginx)