Centos中nginx的使用安装

nginx下载,安装

下载需要的环境

yum install gcc-c++
yum -y install pcre pcre-devel
yum -y install zlib zlib-devel
yum -y install openssl openssl-devel

下载源码文件

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

安装

将下载好的文件进行解压
tar -zxvf nginx-1.13.11.tar.gz

创建nginx-source源码文件,将解压后的文件移动到nginx-source的根路径下,此文件为源码文件
在创建一个存储编译nginx后的文件路径

进入nginx的源码文件下进行编译路径的设置
/usr/local/nginx/nginx为编译后的存放路径
./configure --prefix=/usr/local/nginx/nginx

 在源码文件夹下面执行如下:
 进行make编译
 最后make install
 进入存储编译文件sbin路径启动nginx
 ./nginx

nginx的文件目录结构说明

1、*_tmp目录:共有5个temp结尾的目录,用于存放nginx运行时产生的临时文件
2、conf目录:存放配置文件的目录,包含主配置文件nginx.conf,是我们经常修改的配置文件
3、html目录:默认存放了nginx的错误页面和欢迎页面等
4、logs目录:默认存放了访问日志和错误日志文件
5、sbin目录:默认存放了nginx的二进制命令,常用于nginx服务启动、停止等管理工作

负载均衡

轮询法(默认)

将请求按顺序轮流地分配到后端服务器上,他均衡对待后端的每一台服务器,而不关心服务器实际的连接数和当前的系统负载
upstream tomcat_server{
    server 192.168.10.11 weight=1;
    server 192.168.10.12 weight=1;
}

加权轮询法

不同的后端服务器可能机器的配置和当前系统的负载并不相同,因此他们的抗压能力不同,
给配置高、负载低的机器配置更高的权重,让其处理更多的请求配置低、负载高的机器,
给其分配较低的权重,降低其系统负载。加权轮询很好地将请求顺序且按照权重分配到后端
weight的值越大分配到的访问概率越高
upstream tomcat_server{
    server 192.168.10.11 weight=1;
    server 192.168.10.12 weight=3;        
}

源地址哈希法

根据获取客户端的IP地址,通过哈希函数计算得到一个数值
用该数值对服务器列表的大小进行取模运算,得到的结果便是服务端要访问服务器的序号
采用源地址哈希法进行负载均衡,同一IP地址的客户端,当后端服务器列表不变时,他每次都会映射到同一台服务器进行访问
可以保证来自同一ip的请求被打倒固定的机器上,可以解决session问题
upstream tomcat_server{
    ip_hash;
    server 192.168.10.11 weight=1;
    server 192.168.10.12 weight=3;        
}

最小连接数

由于后端服务器的配置不尽相同,对于请求的处理有快有慢,最小连接数法根据后端服务器当前的连接情况,动态地选取其中当前积压连接
数最少的一台服务器来处理当前的请求,尽可能地提高后端服务的利用效率,将负责合理地分流到每一台服务器
upstream tomcat_server{
    least_coon;
    server 192.168.10.11 weight=1;
    server 192.168.10.12 weight=3;        
}

Fair

比weight、ip_hash更智能的负载均衡算法
可以根据页面大小和加载时间短暂地进行负载均衡,也就是根据后台服务器的响应时间来分配请求,响应时间短的优先分配
Nginx本身不支持fair,如果需要这种调度算法,则必须安装upstream_fair模块
upstream tomcat_server{
    fair;
    server 192.168.10.11 weight=1;
    server 192.168.10.12 weight=3;        
}

url_hash

按访问的URL的哈希结果来分配请求,使每个URL定向到一台后端服务器
可以进一步提高后端缓存服务器的效率
Nginx本身不支持url_hash,如果需要这种调度算法,则必须安装Nginx的hash软件包
upstream tomcat_server{
    hash $request_uri;
    server 192.168.10.11 weight=1;
    server 192.168.10.12 weight=3;        
}

模块安装

Fair

GitHub搜索nginx-upstream-fair-master

下载后解压,在nginx的源码目录下输入如下命令

./configure --prefix=/opt/nginx --add-module=/opt/nginx-upstream-fair-master
说明:
	--prefix后面是nginx编译后的文件存放路径
	--add-module为模块的解压路径
执行玩添加命令后,在源码目录进行make编译

url_hash

GitHub搜索nginx_upstream_hash-master
添加步骤同上

安全配置

  • 1、隐藏版本号
在http标签中配置
在http模块添加
server_tokens off;
  • 2、ip的黑白名单设置
白名单案例
只能192.168.1.1这个ip进行访问,其他都不能访问
location / {
    allow 192.168.1.1;
    deny all;
}
黑名单案例
禁止这一个ip(192.168.1.1)访问,其他都可以访问
location / {
    deny 192.168.1.1;
    allow all;
}
  • 3、https证书配置
    nginx没有ssl模块,所以在配置之前要添加ssl模块
    ./configure --prefix=/usr/local/nginx/nginx --with-http_stub_status_module --with-http_ssl_module
    make

修改nginx.conf文件

server {
        listen       443;
        server_name  localhost;
        root html;
        index index.html index.htm;
        ssl on;
        ssl_certificate 证书.pem文件路径;
        ssl_certificate_key 证书.key文件路径;
        ssl_session_timeout 5m;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; #使用此加>密套件。
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #使用该协议进行配置。
        ssl_prefer_server_ciphers on;
         location / {
            root   html;
            index  index.html index.htm;
        }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值