二言目 - nginx
type: channel
link: https://blog.piemoe.com/tag/nginx/
items: Nginx温习笔记

Nginx温习笔记
type: item
date: 2020-08-26T15:43:00+08:00
description: nginx基本概念Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器，同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点（俄文：Рамблер）开发的，第一个公开版本0.1.0发布于2004年10月4日。其特点是占有内存少，并发能力强，有报告表明能支持高达 50,000 个并发连接数。正向代理 如果把局域网外的internet想象成一个巨大的资源库，则局域网中的客户端要访问internet，则需要通过代离服务器来访问，这种代理服务就称为正向代理。图解：反向代理 反向代理，其实客户端对代理是无感知的，因为客户端不需要任何配置就可以访问，我们只需要将请求发送到反向代理服务器，由反向代理服务器去选择目标服务器获取数据后，再返回给客户端，此时反向代理服务器和目标服务器对外就是一个服务器，暴露的是代理服务器的地址，隐藏了真实服务器的ip地址。图解:负载均衡单个服务器解决不了，增加服务器的数量，然后将请求分发到各个服务器上，将原先请求集中到单个服务器上的情况改为将请求分发到多个服务器上，将负载分发到不同的服务器，也就是我们所说的负载均衡。旧模式并发大时，会出现性能瓶颈。解决方法：提升硬件配置。负载均衡将请求平均分担到3台服务器，就叫负载均衡。动静分离为了加快网站的解析速度，可以把动态页面和静态页面由不同的服务器来解析，加快解析速度，降低原来单个服务器的压力。图解：动态资源：如jsp servlet静态资源：如css js imgnginx安装和常用命令linux中安装使用远程连接工具连接linux系统进入官网http://nginx.org/en/download.html，下载安装nginx相关依赖开启yum：yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel下载并解压安装包//创建一个文件夹 cd /usr/local mkdir nginx cd nginx //下载tar包 wget http://nginx.org/download/nginx-1.18.0.tar.gz tar -xvf nginx-1.18.0.tar.gz安装nginx//进入nginx目录 cd /usr/local/nginx //进入目录 cd nginx-1.18.0 //执行命令 ./configure //执行make命令 make //执行make install命令 make install配置nginx.conf# 打开配置文件 vi /usr/local/nginx/conf/nginx.conf启动cd /usr/local/nginx/sbin ./config常用命令使用nginx操作命令前提条件：必须进入nginx的目录/usr/local/nginx/sbin查看nginx版本号[root@cc sbin]# ./nginx -v nginx version: nginx/1.18.0启动nginx[root@cc sbin]# ./nginx关闭nginx[root@cc sbin]# ./nginx -s stop重新加载nginx修改/usr/local/nginx/conf/nginx.conf配置文件后 要重加载[root@cc sbin]# ./nginx -s reloadnginx配置文件配置文件 /usr/local/nginx/conf/nginx.conf配置文件由三部分组成：全局块从配置文件开始到 events 块之间的内容，主要会设置一些影响nginx 服务器整体运行的配置指令，主要包括配置运行 Nginx 服务器的用户（组），允许生成的 worke process 数，进程 PID 存放路径，日志存放路劲和类型以及配置文件的引入等。#user nobody; worker_processes 1; #worker_processes 值越大，可以支持的并发处理量也越多 # 这是nginx 服务器并发处理服务的关键配置，worker_processes 值越大，可以支持的并发处理量也越多，但是会收到硬件、软件等设备的制约。 #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid;events块 events 块涉及的指令主要影响 Nginx 服务器与用户的网络连接，常用的设置包括是否开启对多 worker_processes 下的网络连接进行序列化，是否允…