nginx基础知识总结

1、nginx的工作模式
master/worker工作模式:
一个master进程:
负载加载和分析配置文件、管理worker进程、平滑重启升级等。
一个或多个worker进程
处理并响应用户请求
缓存相关的进程:
cache loader:载入缓存对象
cache manager:管理缓存对象
nginx的特性:异步、非阻塞、事件驱动
并发请求处理:通过epoll/select
文件IO:高级IO sendfile,异步,mmap
nginx模块:高度模块化,但其模块早期不支持DSO机制。不过近期版本支持动态装载和卸载
模块分类: 核心模块:core module 标准模块: HTTP modules: Standard HTTP modules Optional HTTP modules Mail modules Stream modules 3rd party modules
2、nginx功用:
静态的web资源服务器(图片服务器,或js/css/html/txt等静态资源服务器)
结合FastCGI/uwSGI/SCGI等协议反向代理动态资源请求。
http/https协议的反向代理
imap4/pop3协议的反向代理
tcp/udp协议的请求转发
3、安装nginx
编译安装:

yum安装rpm包
nginx是在yum的epel源中,直接一键yum install nginx即可
4、简单介绍nginx的组成部分:
1)配置文件的组成部分:
主配置文件:/etc/nginx/nginx.conf
include /etc/nginx/conf.d/*.conf
fastcgi,uwsgi,scgi等协议相关的配置文件
mime.types:支持的mime类型。mime表示多用途互联网邮件扩展
2)主配置文件的配置指令:
directive value [value2.....]; nginx配置文件中每一条指令以分号结尾。
注意:
(1):指令必须以分号结尾
(2):支持使用配置变量
内建变量:由nginx模块自带的变量,可直接引入
自定义变量:由用户使用set命令定义;
set variable_name value;
引用变量:$varable_name
3)查看安装时编译配置参数:
nginx -V
nginx -s stop | reload | stop:传递给nginx信号参数
nginx -c file:指定配置文件。
4)主配置文件结构:
main block:主配置端,也是全局配置段;
event {
.......
} 事件驱动相关的配置。
http {
.....
} http/https协议相关的配置段; mail {......}
stream {
.....
}
http协议相关的配置结构
http {
...
...:各server的公共配置
server {
....
}:每个server用于定义一个虚拟主机
server {
......
listen
server_name
root
alias
location [OPERATOR] url { location用来定义用户对某个资源的访问控制。
....
if condition {
......
}
}
}
}
5)案例演示:
先说明一下:

注意这个下划线表示匹配所有的主机的80端口。所以我们使用IP直接访问的话,默认匹配的是/usr/share/nginx/html这个目录下的网页。
现在我们定义一个虚拟主机,放在/etc/nginx/conf.d/目录下。

接下来在/var/nginx/html目录下编辑index.html默认主页:

然后在windows的hosts文件里面添加映射:

最后使用浏览器访问:

如果使用ip访问的话,匹配的是nginx服务的默认主页(在/etc/nginx/nginx.conf配置文件中定义)。

nginx基础知识总结的更多相关文章
- Nginx基础知识介绍
Nginx基础知识介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Nginx概述 Nginx是免费的.开源的.高性能的HTTP和正向/反向代理服务器.邮件代理服务器.以及T ...
- day63:Linux:nginx基础知识&nginx基础模块
目录 1.nginx基础知识 1.1 什么是nginx 1.2 nginx应用场景 1.3 nginx组成结构 1.4 nginx安装部署 1.5 nginx目录结构 1.6 nginx配置文件 1. ...
- Nginx 基础知识学习
资料 基础 掘金-前端开发者必备的Nginx知识 介绍的比较综合,正向代理反向代理的区别.负载均衡等知识,都有介绍 静默虚空-Nginx 简易教程 博客园上的一篇推荐文章 简书-全面了解Nginx到底 ...
- Nginx基础知识之————Nginx 环境的搭建?
本课时主要给大家讲解如何在 Linux 系统下搭建 Nginx 和 Nginx 搭建过程中常见问题的知识,并结合实例让学员掌握 Nginx 环境的搭建. 下载解压: 安装gcc-c++ 从新配置文件: ...
- Nginx基础知识之————什么是 Nginx?
本课时主要给大家讲解什么是 Nginx 和 Nginx 的功能,Nginx 与其他服务器的性能比较和 Nginx 的优点总结的知识,并结合实例让学员深入理解 Nginx 和 Nginx 的功能以及 N ...
- Nginx基础知识之————RTMP模块中的中HLS专题(翻译文档)
一.在Nginx配置文件的RTMP模块中配置hls hls_key_path /tmp/hlskeys; 提示错误信息: nginx: [emerg] the same path name " ...
- Nginx基础知识之————RTMP模块专题(实践文档)
on_publish 语法:on_publish url上下文:rtmp, server, application描述:这个可以设置为一个API接口(GET方式接受所有参数),会给这个API接口返回8 ...
- Nginx基础知识————生成自签名ca 证书 使nginx 支持https
创建服务器私钥,命令会让你输入一个口令: $ openssl genrsa -des3 -out server.key 1024 创建签名请求的证书(CSR): $ openssl req -new ...
- Nginx基础知识之————多模块(非覆盖安装、RTMP在线人数实例安装测试)
说明:已经安装好的nginx,需要添加一个未被编译安装的模块,需要怎么弄呢? 具体:这里以安装第三方nginx-rtmp-module和nginx-accesskey-2.0.3模块为例,nginx的 ...
- Nginx基础知识之——配置文件信息(检查配置文件是否正确)
一.检查配置文件是否正确: /usr/local/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf 检查结果: nginx: [emerg] ngin ...
随机推荐
- Spring Cloud 微服务中搭建 OAuth2.0 认证授权服务
在使用 Spring Cloud 体系来构建微服务的过程中,用户请求是通过网关(ZUUL 或 Spring APIGateway)以 HTTP 协议来传输信息,API 网关将自己注册为 Eureka ...
- Android生成二维码--保存和分享二维码图片
之前写过生成自定义二维码的两篇文章:<Android生成自定义二维码><Android生成二维码–拍照或从相册选取图片>,下面就介绍一下Android应用内如何保存以及分享二维 ...
- CentOS 6.5的安装详解(图文详解)
不多说,直接上干货! 主流: 目前的Linux操作系统主要应用于生产环境, 主流企业级Linux系统仍旧是RedHat或者CentOS. 免费: RedHat 和CentOS差别不大,CentOS是一 ...
- Nunit测试工具使用
Nunit是什么 Nunit是一种TDD工具,和Junit一样的! 怎么样获取Nunit 打开Visual Studio工具,然后在菜单栏中的工具->扩展管理器中的联机库中搜索"nun ...
- Redis 哨兵
作用 Redis Sentinel,即Redis哨兵,在Redis 2.8版本开始引入. 主要提供了配置提供者,通知,哨兵的监控和自动故障转移功能.哨兵的核心功能是主节点的自动故障转移. 下面是Red ...
- rem布局原理深度理解(以及em/vw/vh)
一.前言 我们h5项目终端适配采用的是淘宝那套<Flexible实现手淘H5页面的终端适配>方案.主要原理是rem布局.最近和别人谈弹性布局原理,发现虽然已经使用了那套方案很久,但是自己对 ...
- 安装MongDB
MongoDB:非关系型的文档型数据库. 下载 安装 bin拷贝到d:/mongodb/bin 新建文件夹: d:/mongodb/var 新建文件 d:/mongodb/logs.txt 打开cmd ...
- svgalib_1.4.3 移植
运行环境 RedHat 6.3 Linux localhost 2.6.32-279.el6.i686 需准备好的文件: libx86_1.1+ds1.orig.tar.gz libx86_1.1+d ...
- 微服务学习二:springboot与swagger2的集成
现在测试都提倡自动化测试,那我们作为后台的开发人员,也得进步下啊,以前用postman来测试后台接口,那个麻烦啊,一个字母输错就导致测试失败,现在swagger的出现可谓是拯救了这些开发人员,便捷之处 ...
- 《深入理解Java虚拟机》(五)JVM调优 - 工具
JVM调优 - 工具 JConsole:Java监视与管理控制台 JConsole是一个机遇JMX(Java Management Extensions,即Java管理扩展)的JVM监控与管理工具,监 ...