当前位置:   article > 正文

linux 安装nginx服务器配置,Linux下安装Nginx服务器并配置请求转发及负载均衡

lunix服务器使用宝塔安装nginx做转发服务器

ce191e611f28d9560754998c36c57e2a.png

安装本例中我使用的版本为:

nginx-1.11.5

pcre-8.39

zlib-1.2.8

openssl-1.0.2j

1.下载所需依赖包

(1) gzip模块需要zlib库:官网地址(http://www.zlib.net/zlib-1.2.11.tar.gz)

(2) rewrite模块需要pcre库:官网地址(https://ftp.pcre.org/pub/pcre/)

(3) ssl功能需要openssl库:官网地址(https://www.openssl.org/source/openssl-1.0.2j.tar.gz)

2.下载nginx:官网地址(http://nginx.org/en/download.html)

3.安装

依赖包安装顺序为:openssl,zlib,pcre,最后安装nginx

安装步骤:

将下载的四个tar.gz压缩包统一放到 /usr/local/src 目录下

分别解压压缩包:tar zxvf xxx-xxx.tar.gz

如果不需要openssl、zlib、pcre可以跳过(1)(2)(3)直接到第(4)步安装Nginx。

(1)安装openssl

进入openssl解压出的文件夹> ./config --prefix=/usr/local/openssl

> make

> make install

(2)安装zlib

进入zlib解压出的文件夹> ./configure --prefix=/usr/local/zlib

> make

> make install

(3)安装pcre

进入pcre解压出的文件夹> ./configure --prefix=/usr/local/pcre

> make

> make install

(4)安装nginx

进入nginx解压出的文件夹> ./configure --with-pcre=../pcre-xxx --with-http_ssl_module --with-zlib=../zlib-xxx --with-openssl=../openssl-xxx --prefix=/usr/local/nginx

> make

> make install

至此,nginx安装全部完成

检测nginx是否安装成功:> /usr/local/nginx/sbin/nginx -t

如果出现成功提示说明安装成功。

启动nginx:> /usr/local/nginx/sbin/nginx

查看占用端口:> netstat -ntlp

设置自启动:> vim /etc/rc.local

添加nginx启动命令:/usr/local/nginx/sbin/nginx

配置请求转发

方式1:由nginx转发请求到tomcat

当用户访问http://localhost:80,nginx将这个请求什么也不做,只负责转发到tomcat的访问地址http://localhost:8080。在nginx.conf配置文件中的http模块下添加如下配置。

54b10dc5d49fad1d5a164d860fa6cf80.png

方式2:动静分离(指向一个目录)

静态资源:图片、css、js、html(静态资源处理时并发非常高)

512f2c8371fb9b26894d5f72c8f48ac5.png

方式3:图片服务器(指向一个目录)

4091f5621e54199572c9a4965e9f4d79.png

配置负载均衡

常用配置

0ab8f1d4801a87de7c069c4ff2520c56.png

轮询

默认配置,tomcats有n个,请求就被平均分配到这n个服务器上。请求次数%n,平均分配到每个服务器。配置一个upstream,声明一个名称test,配置多个ip地址转向,默认就是轮询,或者配置上weight,并且值相同。

f03264828b8f9018ad15920331548646.png

默认

5c36f3bfa84e1cdd8dc875936c8ec5d0.png

weight相同

权重

轮询方式存在问题:服务器有性能比较好的,有性能比较差的。新的服务器的配置比旧的服务器强悍很多。CPU核也多,内存也大,硬盘容量也大,速度还快。如果还使用轮询的方式,就会造成新服务器资源的浪费,旧的服务器资源压力大。显然资源分配不合理,这时就需要使用权重的方式,让高配置的服务器分得多的访问,低配的分得少。

a6dc1a97bb2415b75c8c9185fa9c747f.png

weight值越大分配的访问越多

nginx.conf配置说明

#运行用户user root;

#启动进程,通常设置成和cpu的数量相等worker_processes 4;

#工作模式及连接数上限events {

#epoll是多路复用IO(I/O Multiplexing)中的一种方式(仅用于linux2.6以上内核,可以大大提高nginx的性能)

use epoll;

#单个后台worker_process进程的最大并发连接数

worker_connections 1024;

}

#http配置http {

#请求数据最大值

client_max_body_size 10M;

#配置上文中请求转发和负载均衡的server模块和upstream模块

}

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/662111
推荐阅读
相关标签
  

闽ICP备14008679号