nginx基本概念
nginx是一个高性能的Http和反向代理服务器,特点是占有的内存少,并发能力强
能经受高负载的考验,有报告显示支持高达50000个并发量
-
反向代理
- 正向代理:在客户端配置代理服务器,通过代理服务器访问网址
- 反向代理:我们只需要将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据后,在返回给客户端,此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器的地址,隐藏了真实服务器的IP地址
-
负载均衡
- 单个服务器解决不了,我们增加服务器的数量,然后将请求分发到各个服务器上,将原先请求集中到单个服务器上的情况改为分发到多个服务器上,将负载分发到不同服务器上就是负载均衡
-
动静分离
- 为了加快网站的解析速度,可以把动态页面和静态页面由不同服务器来解析,加快解析速度,降低原来单个服务器的压力
nginx安装,常用命令配置文件
- 安装前需要安装的依赖
- pcre-8.37.tar.gz(与安装neginx一样)
- wget http://downloads.sourceforge.net/project/pcre/pcre/8.37/tar.gz
- tar -xvf pcre.tar.gz(解压)
- ./config(启动)
- make && make install (编译并安装命令)
- pcre-config --version(查看版本)
- openssl-1.0.1t.tar.gz
- yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel
- zlib-1.2.8.tar.gz
- nginx-1.11.1.tar.gz
- pcre-8.37.tar.gz(与安装neginx一样)
- 安装成功之后会在usr中多出来一个文件夹local/nginx,在nginx有sbin有启动脚本
- 查看开放的端口
- firewall-cmd --list-all
- 设置开放端口
- firewall-cmd --add-service=http -permanent
- sudo firewall-cmd --add-port=80/tcp --permanent
- 重启防火墙
- firewall-cmd --reload
nginx常用命令
前提是进入到/usr/local/nginx/sbin目录中
查看nginx版本号
./nginx -v
启动nginx
./nginx
关闭nginx
./nginx -s stop
重加载
./nginx -s reload
nginx配置文件组成
- 全局块
- 从配置文件开始到events块之间的内容,主要会设置一些影响nginx服务器整体运行的配置指令
- worker_processes 1; 值越大处理的并发量越多,但是也会收到硬件的影响
- events块
- 主要影响nginx服务器与用户的网络连接
- 比如worker_connections 1024; 支持的最大连接数
- http块
- nginx服务器配置中最频繁的一部分
- http块又包括http全局块和server块
- http全局块
- server块(又包括server全局块和location块,一个server块可以配置多个location块)
nginx配置示例1-反向代理
-
实现效果
- 打开浏览器,在浏览器地址输入栏输入地址www.123.com,跳转到linux系统tomcat主页面中
-
准备工作
-
在linux系统中安装tomcat,使用默认端口8080
-
使用命令对外开放访问端口
firewall-cmd --add port=8080/tcp --permanent
firewall-cmd --reload
firewall-cmd --list-all
-
安装完成直接启动tomcat,并测试tomcat是否能访问
-
-
配置windows浏览器本地的host文件默认路径是c盘的windows/system32/drivers/etc/hosts
在文件最后加入你linux的的IP 域名(例:192.168.12.129 www.123.com)
-
-
在nginx配置文件中配置
- 在service块中配置好你要监听的端口号,和 server_name ip
- 在location块中配置要跳转的路径:写法是:proxy_pass http://127/0.0.1:8080
-
启动nginx进行测试
nginx配置示例2-反向代理
- 实现效果
- 使用nginx反向代理,根据访问的路径跳转到不同的端口服务中,nginx江亭端口为9001
- 访问http//127.0.0.1/edu/直接跳转到127.0.0.1:8080
- 访问http//127.0.0.1/vod/直接跳转到127.0.0.1:8081
- 准备工作
- 准备两个tomcat服务器,一个端口是8080,一个是8081
- 创建文件夹或测试的页面
nginx配置示例-负载均衡
持续更新中…
nginx配置示例-动静分离
持续更新中…
nginx配置高可用集群
持续更新中…
nginx原理
持续更新中…