目录

  • 1 Nginx的安装
  • 1.1先安装相关依赖
  • 1.1.1安装 pcre 依赖
  • 1.1.2安装 openssl 、zlib 、 gcc 依赖
  • 1.2安装Nginx
  • 1.3 如何进行访问?
  • 1.4访问不到需要关闭虚拟机里面的防火墙
  • 2 Nginx安装总结
  • 3 Nginx的常用命令
  • 4Nginx的配置文件
  • 4.1 他在哪里
  • 4.2介绍里面内容
  • 4.3三部分组成
  • 4.3.1全局块
  • 4.3.2events 块
  • 4.3.3http 块
  • 5 Nginx实现反向代理
  • 5.1需求(1)
  • 5.2先安装tomcat
  • 5.3访问的过程
  • 5.4配置
  • 5.5需求(2)
  • 5.6创建8081端口的Tomcat(8082的一样)
  • 5.7往两个Tomcat里面放项目
  • 5.8Nginx配置
  • 5.9 location里面配置说明
  • 6 Nginx实现负载均衡
  • 6.1需求
  • 6.2准备
  • 6.3nginx 里面负载均衡配置
  • 6.4nginx 分配服务器策略
  • 6.4.1第一种 轮询(默认)
  • 6.4.2第二种 weight
  • 6.4.3第三种 ip_hash
  • 6.4.4第四种 fair(第三方)
  • 7 Nginx的动静分离
  • 7.1创建一个放静态资源的目录
  • 7.2通过静态资源配置进行访问(需求)
  • 7.3配置
  • 8总结


1 Nginx的安装

1.1先安装相关依赖

1.1.1安装 pcre 依赖

这个需要网上下载这个依赖之后,移动到虚拟机里面

linux给nginx配置ftp服务 linux的nginx配置文件配置_Nginx

以下这个是移动到虚拟机里面

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux给nginx配置ftp服务_02


进行解压压缩文件

linux给nginx配置ftp服务 linux的nginx配置文件配置_Nginx_03

tar -xvf pcre-8.37.tar.gz

解压完成就有这个文件夹

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux_04


进入这个文件夹,执行一个命令

./configure

linux给nginx配置ftp服务 linux的nginx配置文件配置_nginx_05


执行完之后,最后是这样的

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux给nginx配置ftp服务_06


如果不是这样,就是安装这个也需要其他的依赖环境,比如c的环境和c++的环境,可以这样安装这些环境

configure: error: no acceptable C compiler found in $PATH 已解决,亲测有效

configure: error: You need a C++ compiler for C++ support.[系统缺少c++环境],这样解决,亲测有效

虚拟机 里面 bash: make: 未找到命令…,这样解决

以上完成之后,就可以进行编译和安装了,编译和安装的命令是:

make && make install

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux_07


出现以上的情况,就是安装好所需要的这个依赖了

查看版本

linux给nginx配置ftp服务 linux的nginx配置文件配置_负载均衡_08

1.1.2安装 openssl 、zlib 、 gcc 依赖

yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel

以上一个命令 就可以安装成功

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux_09

1.2安装Nginx

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux给nginx配置ftp服务_10


linux给nginx配置ftp服务 linux的nginx配置文件配置_linux给nginx配置ftp服务_11


进行解压

tar -xvf nginx-1.12.2.tar.gz

linux给nginx配置ftp服务 linux的nginx配置文件配置_nginx_12


检查一下

linux给nginx配置ftp服务 linux的nginx配置文件配置_nginx_13

make && make install

linux给nginx配置ftp服务 linux的nginx配置文件配置_Nginx_14


以上相当于就安装完成了,我们进入另一个目录

会自动的在这个local目录下安装Nginx这个文件夹

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux给nginx配置ftp服务_15


进入这个sbin的目录下

linux给nginx配置ftp服务 linux的nginx配置文件配置_负载均衡_16


linux给nginx配置ftp服务 linux的nginx配置文件配置_linux_17


启动Nginx

linux给nginx配置ftp服务 linux的nginx配置文件配置_Nginx_18


以上就启动了

查看进程

linux给nginx配置ftp服务 linux的nginx配置文件配置_Nginx_19

1.3 如何进行访问?

linux给nginx配置ftp服务 linux的nginx配置文件配置_负载均衡_20


先打开以上的文件

找到端口是80

linux给nginx配置ftp服务 linux的nginx配置文件配置_负载均衡_21


以上就访问到了

1.4访问不到需要关闭虚拟机里面的防火墙

先看此时虚拟机里面的防火墙,开放的端口号是什么

查看防火墙是否开启

linux给nginx配置ftp服务 linux的nginx配置文件配置_负载均衡_22


以上显示关闭,现在重新开启

开启防火墙systemctl start firewalld

linux给nginx配置ftp服务 linux的nginx配置文件配置_Nginx_23


linux给nginx配置ftp服务 linux的nginx配置文件配置_nginx_24


以上是开启了

现在查看开启了哪些端口

firewall-cmd --list-all

linux给nginx配置ftp服务 linux的nginx配置文件配置_nginx_25


一个都没有开放,我们将80端口就行开放

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux_26

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

新增了开放端口,要重新启动

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux_27

linux给nginx配置ftp服务 linux的nginx配置文件配置_负载均衡_28

以上就可以访问了

关闭防火墙:systemctl stop firewalld

2 Nginx安装总结

linux给nginx配置ftp服务 linux的nginx配置文件配置_nginx_29


上传安装包进行安装之后,会自动的在另一个地方生成Nginx的文件夹

以后我们操作Nginx就是在那个地方,具体地方是:

linux给nginx配置ftp服务 linux的nginx配置文件配置_nginx_30


linux给nginx配置ftp服务 linux的nginx配置文件配置_linux给nginx配置ftp服务_31

3 Nginx的常用命令

使用命令,必须进入到Nginx的一个目录里面

linux给nginx配置ftp服务 linux的nginx配置文件配置_负载均衡_32


在这个里面进行使用

进入 nginx 目录中
cd /usr/local/nginx/sbin

1、查看 nginx 版本号
./nginx -v 

2、启动 nginx
./nginx
3、停止 nginx
./nginx -s stop
4、重新加载 nginx
./nginx -s reload

linux给nginx配置ftp服务 linux的nginx配置文件配置_Nginx_33

4Nginx的配置文件

4.1 他在哪里

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux_34

4.2介绍里面内容

刚安装的Nginx,打开这个文件,里面的东西是

linux给nginx配置ftp服务 linux的nginx配置文件配置_nginx_35

4.3三部分组成

4.3.1全局块

配置服务器整体运行的配置指令
比如 worker_processes 1;处理并发数的配置

linux给nginx配置ftp服务 linux的nginx配置文件配置_Nginx_36

4.3.2events 块

影响 Nginx 服务器与用户的网络连接
比如 worker_connections 1024; 支持的最大连接数为 1024

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux给nginx配置ftp服务_37

events {
    worker_connections  1024;
}

4.3.3http 块

还包含两部分:
http 全局块
server 块

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux给nginx配置ftp服务_38


linux给nginx配置ftp服务 linux的nginx配置文件配置_负载均衡_39

5 Nginx实现反向代理

5.1需求(1)

我们在虚拟机里面启动一个项目,比如说是启动一个Tomcat,本来在浏览器可以用IP+端口在浏览器访问这个Tomcat,但是现在是想随便定义一个网址,就可以访问这个,也就是将真实的IP进行隐藏

5.2先安装tomcat

在Linux上面装jdk, Tomcat软件,一步一步带你安装

linux给nginx配置ftp服务 linux的nginx配置文件配置_nginx_40

5.3访问的过程

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux_41

5.4配置

第一步 在 windows 系统的 host 文件进行域名和 ip 对应关系的配置

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux给nginx配置ftp服务_42


linux给nginx配置ftp服务 linux的nginx配置文件配置_linux_43


第二步 在 nginx 进行请求转发的配置(反向代理配置)

打开配置文件

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux_44


linux给nginx配置ftp服务 linux的nginx配置文件配置_负载均衡_45


改完配置文件,重新启动,在对应的目录下

./nginx -s reload

linux给nginx配置ftp服务 linux的nginx配置文件配置_Nginx_46

5.5需求(2)

服务器里面有2个项目,都需要Nginx做反向代理,两个项目的端口号是不一样的。但是我们需要实现使用Nginx,外界访问的IP和端口是一样的,但是路径不一样,就访问不同的项目。具体是这样

浏览器访问  http://

5.6创建8081端口的Tomcat(8082的一样)

已经有一个8080端口的Tomcat了,现在再创建一个8081的

linux给nginx配置ftp服务 linux的nginx配置文件配置_负载均衡_47


解压以上的Tomcat

创建2个文件夹,里面分别是8081端口的Tomcat和8082端口的Tomcat

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux_48


linux给nginx配置ftp服务 linux的nginx配置文件配置_linux给nginx配置ftp服务_49


两个文件夹下都放这个压缩包,之后再各个文件夹下分别解压先进入8081

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux给nginx配置ftp服务_50


解压这个Tomcat的压缩包

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux_51


解压之后是

linux给nginx配置ftp服务 linux的nginx配置文件配置_nginx_52


linux给nginx配置ftp服务 linux的nginx配置文件配置_linux_53


改配置文件,将8080改为8081

保存,启动

linux给nginx配置ftp服务 linux的nginx配置文件配置_负载均衡_54


把防火墙关闭了,就不需要一个一个放开端口了

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux给nginx配置ftp服务_55


8082端口的类似

5.7往两个Tomcat里面放项目

我们在8081里面创建一个目录

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux_56


linux给nginx配置ftp服务 linux的nginx配置文件配置_linux_57


linux给nginx配置ftp服务 linux的nginx配置文件配置_负载均衡_58

我们在8082里面创建一个目录

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux_59


linux给nginx配置ftp服务 linux的nginx配置文件配置_linux给nginx配置ftp服务_60


linux给nginx配置ftp服务 linux的nginx配置文件配置_Nginx_61

以上直接根据Tomcat的IP和端口号就可以访问

5.8Nginx配置

配置里面多加这个代码,以后同样的IP和端口号,只要后面的路径不一样,就访问不同的项目

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux给nginx配置ftp服务_62


改完配置文件,重新启动Nginx

./nginx -s stop 这个是停止Nginx

那么在浏览器里面就可以访问了

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux给nginx配置ftp服务_63

linux给nginx配置ftp服务 linux的nginx配置文件配置_nginx_64

5.9 location里面配置说明

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux给nginx配置ftp服务_65

6 Nginx实现负载均衡

6.1需求

两台服务器,里面的项目一样,现在使用Nginx,实现负载均衡,现在使用不同的端口号代表不同的服务器

6.2准备

8081端口里面的项目

linux给nginx配置ftp服务 linux的nginx配置文件配置_Nginx_66


8082里面的项目

linux给nginx配置ftp服务 linux的nginx配置文件配置_负载均衡_67

6.3nginx 里面负载均衡配置

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux_68

80端口,连续刷新,里面的东西是不一样的

linux给nginx配置ftp服务 linux的nginx配置文件配置_Nginx_69


linux给nginx配置ftp服务 linux的nginx配置文件配置_nginx_70

6.4nginx 分配服务器策略

6.4.1第一种 轮询(默认)

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

6.4.2第二种 weight

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

使用:

linux给nginx配置ftp服务 linux的nginx配置文件配置_Nginx_71

6.4.3第三种 ip_hash

linux给nginx配置ftp服务 linux的nginx配置文件配置_Nginx_72

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

使用

linux给nginx配置ftp服务 linux的nginx配置文件配置_Nginx_73

6.4.4第四种 fair(第三方)

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

linux给nginx配置ftp服务 linux的nginx配置文件配置_负载均衡_74

7 Nginx的动静分离

7.1创建一个放静态资源的目录

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux给nginx配置ftp服务_75


linux给nginx配置ftp服务 linux的nginx配置文件配置_linux给nginx配置ftp服务_76


linux给nginx配置ftp服务 linux的nginx配置文件配置_Nginx_77

7.2通过静态资源配置进行访问(需求)

不是通过Tomcat进行访问,是自己通过静态资源的配置进行访问

7.3配置

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux_78


linux给nginx配置ftp服务 linux的nginx配置文件配置_负载均衡_79

8总结

linux给nginx配置ftp服务 linux的nginx配置文件配置_linux_80