Nginx 简介
1.1 Nginx 概述
Nginx(engine x) 是一个高性能的 HTTP 和反向代理 web 服务器,同时也提供了 IMAP/POP3/SMTP 服务。Nginx 是由伊戈尔·赛索耶夫为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本 0.1.0 发布于 2004 年 10 月 4 日。其将源代码以类 BSD 许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。其特点是占有内存少,并发能力强,事实上 nginx 的并发能力在同类型的网页服务器中表现较好,中国大陆使用 nginx 网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。
1.2 Nginx 功能
1.2.1 主要功能
☞ HTTP 服务器:Nginx 可以作为一个 HTTP 服务器,可以将服务器上的静态文件(如HTML、图片)通过 HTTP 协议展现给客户端。 ☞ 反向代理:客户端本来可以直接通过 HTTP 协议访问某网站应用服务器,运维人员在中间加上一个 Nginx,客户端请求 Nginx,Nginx 请求应用服务器,然后将结果返回给客户端,此时 Nginx 就是反向代理服务器。负载均衡、虚拟主机等,都是基于反向代理实现 ☞ 负载均衡:负载均衡多在高并发情况下需要使用。其原理就是将数据流量分摊到多个服务器执行,减轻每台服务器的压力,多台服务器(集群)共同完成工作任务,从而提高了数据的吞吐量。同时带来的好处是,其中一台服务器万一挂了,只要还有其他服务器正常运行,就不会影响用户使用。
1.2.2 Nginx 请求处理逻辑
1.3 Nginx 安装
1.3.1 Windows 平台
☞ 安装 首先去 官方网站 下载 Windows 版本的 Nginx,你会得到一个压缩文件,找一个合适的文件夹,解压它。OK,你已经得到了一个安装好的 Nginx。
☞ 启动
可以直接双击 nginx.exe,虽然黑框口一闪而过,但是 Nginx 已经启动了,访问 localhost:80
可以看到 Nginx 的欢迎页。我们还可以使用 cmd 执行 nginx.exe
或者 start nginx
启动 Nginx ,执行 nginx -s reload
重启 Nginx,执行 nginx -s stop
关闭 Nginx。
1.3.2 Linux 平台
☞ 下载
首先去 官方网站 下载 Linux 版本的 Nginx,你会得到一个 .tar.gz
的压缩文件,然后丢到服务器上。或者在服务器上直接使用 wget http://nginx.org/download/nginx-1.19.1.tar.gz
下载到服务器上。
☞ 准备
Linux 版的 Nginx 需要编译,因此需要 使用 yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel
安装编译工具及库文件。
☞ 安装
首先执行 tar zxvf Nginx.tar.gz
解压压缩文件,然后进入解压好的文件夹执行 ./configure --prefix=/usr/local/nginx
后缀是指定位置安装 Nginx,然后执行 make
编译文件,最后执行 make install
安装 Nginx
☞ 启动
进入安装目录 /nginx/sbin
文件夹中启动,命令与 Windows 中一致。访问服务器地址 + 80 端口就可以看到 Nginx 的欢迎页。
1.4 Nginx 配置文件
Nginx 的配置文件位于 /nginx/conf/nginx.conf
,下图就是刚刚安装好的 Nginx 的默认配置(由于图片大小问题,删除了部分注释配置)。
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Python xpath表达式如何实现数据处理
- Python脚本破解压缩文件口令实例教程(zipfile)
- 使用keras实现Precise, Recall, F1-socre方式
- Python Django搭建网站流程图解
- Pandas对DataFrame单列/多列进行运算(map, apply, transform, agg)
- keras自定义损失函数并且模型加载的写法介绍
- pandas DataFrame运算的实现
- Python流程控制语句的深入讲解
- 在keras里面实现计算f1-score的代码
- Keras官方中文文档:性能评估Metrices详解
- Django QuerySet查询集原理及代码实例
- Python中zipfile压缩文件模块的基本使用教程
- 基于nexus3配置Python仓库过程详解
- Python Django中间件使用原理及流程分析
- keras读取h5文件load_weights、load代码操作