nginx安装与配置

1.安装

下载或通过yum安装相应组件
安装组件:
yum install gcc openssl openssl-devel pcre pcre-devel zlib zlib-devel -y

解压下载的nginx源码包:
tar -zxvf nginx-1.10.3.tar.gz

安装nginx:

cd nginx-1.10.3
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-file-aio --with-threads --with-http_stub_status_module
make
make install

其中执行./configure 时报错需要检查–sbin-path=后面的值是否正确
make报错需要检查安装的组件是否有缺失

2.配置

1).启动

运行/usr/local/nginx/nginx 命令来启动 nginx
启动时需要确认本机的80端口未被占用,否则出现如下报错:
这里写图片描述

正常启动后,打开本机浏览器,输入本机IP,如下:
这里写图片描述

2).nginx的基本操作

启动
[root@foundation38 ~]# /usr/local/nginx/sbin/nginx
停止/重启
[root@foundation38 ~]# /usr/local/nginx/sbin/nginx -s stop(quit、reload)
命令帮助
[root@foundation38 ~]# /usr/local/nginx/sbin/nginx -h
验证配置文件
[root@foundation38 ~]# /usr/local/nginx/sbin/nginx -t
配置文件
[root@foundation38 ~]# vim /usr/local/nginx/conf/nginx.conf

3).基本配置Nginx

服务端:

useradd -M -d /usr/local/nginx/ -s /sbin/nologin -u 800 nginx

vim /usr/local/nginx/conf/nginx.conf
配置文件内容如下

user  nginx nginx;    nginx使用的用户及用户组
worker_processes  1;   核心数

#worker_processes  2;    
#worker_cpu_affinity  01 10;  核心数为2的配置

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  65535;  #最大访问量
#省略中间配置
http {
        #省略中间配置

        server {
        listen       443 ssl;
        server_name  localhost;

        ssl_certificate      cert.pem;
        ssl_certificate_key  cert.pem;    将key都更改为cert.pem

        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m;

        ssl_ciphers  HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers  on;

        location / {
            root   html;
            index  index.html index.htm;
        }
    }
[root@server1 sbin]# ./nginx -t  ##测试配置文件是否正确

这里写图片描述

[root@server1 sbin]# /usr/local/nginx/sbin/nginx -s reload  #刷新nginx
service iptables stop  #关闭防火墙

客户端:

在浏览器中访问https://172.25.15.1:
这里写图片描述

4).简单配置

服务端:
vim /usr/local/nginx/conf/nginx.conf

#省略上面配置
http {

    #省略中间配置

    server {
        listen       80;
        server_name  www.westos.org;

        location / {
            root   /www;
            index  index.html;

        }
    }

    server {
        listen       80;
        server_name  bbs.westos.org;

        location / {
            root   /bbs;
            index  index.html;
        }
    }
}
[root@server1 sbin]# ./nginx -t  ##测试配置文件是否正确
[root@server1 sbin]# /usr/local/nginx/sbin/nginx -s reload  #刷新nginx

客户端:

vim /etc.hosts #配置解析
172.25.15.1 server1 www.westos.com bbs.westos.org
这里写图片描述

这里写图片描述

5).负载均衡配置

服务端:
vim /usr/local/nginx/conf/nginx.conf

#省略上面配置
http {
        upstream westos{
        server 172.25.15.2:80;
        server 172.25.15.3:80;
        }

    include       mime.types;
    default_type  application/octet-stream;

    #省略中间配置

    server {
        listen       80;
        server_name  www.westos.org;

        location / {
        #    root   /www;
        #    index  index.html;
             proxy_pass http://westos;  #转发的路径为westos组内的

        }
    }

    server {
        listen       80;
        server_name  bbs.westos.org;

        location / {
            root   /bbs;
            index  index.html;
        }
    }
}
[root@server1 sbin]# ./nginx -t  ##测试配置文件是否正确
[root@server1 sbin]# /usr/local/nginx/sbin/nginx -s reload  #刷新nginx

客户端:

vim /etc.hosts #配置解析
172.25.15.1 server1 www.westos.com bbs.westos.org

这里写图片描述

负载均衡的几种模式

1、轮询(默认)

每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。

2、weight
指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。
例如:
upstream westos {
server 172.25.15.2:80 weight=10;
server 172.25.15.3:80 weight=5;
}
#按照上面配置,访问172.25.15.2:80的数量会比172.25.15.3:80多1倍

3、ip_hash
每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。
例如:
upstream westos {
ip_hash;
server 172.25.15.2:80;
server 172.25.15.3:80;
}

例如配置模式为ip_hash
服务端:
vim /usr/local/nginx/conf/nginx.conf

#主要更改这块
http {
        upstream westos{
        ip_hash;
        server 172.25.15.2:80;
        server 172.25.15.3:80;
        }
}
[root@server1 sbin]# ./nginx -t  ##测试配置文件是否正确
[root@server1 sbin]# /usr/local/nginx/sbin/nginx -s reload  #刷新nginx

客户端
这里写图片描述

6).地址重定向

服务端:
vim /usr/local/nginx/conf/nginx.conf

#省略上面配置
http {
        upstream westos{
        server 172.25.15.2:80;
        server 172.25.15.3:80;
        }

    include       mime.types;
    default_type  application/octet-stream;

    #省略中间配置

    #反向代理    
    server {
        listen       80;
        server_name  www.westos.org;

        location / {
        #    root   /www;
        #    index  index.html;
             proxy_pass http://westos;  

        }
    }

    #地址重定向
    server {
        listen       80;
        server_name  bbs.westos.org;
        rewrite ^(.*) https://bbs.westos.org$1 permanent;

#        location / {
#            root   /bbs;
#            index  index.html;
#        }
    }
    server {
        listen 80;
        server_name westos.org aa.westos.org;
        rewrite  ^(.*) http://bbs.westos.org$1 permanent;
}

}
[root@server1 sbin]# ./nginx -t  ##测试配置文件是否正确
[root@server1 sbin]# /usr/local/nginx/sbin/nginx -s reload  #刷新nginx

客户端:
vim /etc.hosts #配置解析
172.25.15.1 server1 www.westos.com bbs.westos.org

这里写图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值