nginx简单介绍

Nginx的负载均衡策略可以分两大类:内置策略和扩展侧略:

内置策略包括:轮询,加权轮询,IP hash

扩展策略是:url hash ,fair

nginx.conf文件结构

1)全局块:

通常配置一运行nginx的组,用户,允许生成的work process数,PID的存放路径

2)events块

支持使用的网络事件模型,每个workprocess可以同时支持的最大连接数

3)http块

包含server块,每个server块又包含location块。

可以在http块中配置包括文件的引入,MIME-Type定义,是否使用sendfile传输文件

4)server块

和虚拟主机相连接,每个server块相当与一台虚拟主机

5)location块

基于nginx服务器收到的请求字符串(例如server_name/uri_string),对除虚拟主机名称(也可以是IP别名)之外的字符串(例如uri_string部分进行)匹配,对特定段请求进行处理,地址定向,数据缓存和应答控制等功能都是在这一部分实现的。

如果有多个匹配就记录匹配最高的那个,然后,服务器再用localtion块的中的正则uri和请求的字符串匹配,当第一个正则匹配成功以后就结束搜索,并使用这个location块处理请求,如果正则失败就使用记录的匹配度最高的localtion块处理这个请求;

location定义的三种方式;

1)location url{} 对当前路径及路径下的所有对象都有效

2)Location =url{} 只对当前路径有效

=要求请求的字符串与uri严格匹配,如果匹配成功,就停止继续搜索;

3)Location ~url{} ~做模式匹配,区分字符大小写

4)Location ~{} 不区分字符大小写

如果uri包含正则表达式 ,就必须使用~或 ~

具体指令

1)设置网络连接的序列话化

Accpet_mutex on

设置为开启的时候,将会对nginx进程连接进行序列化,防止多个进程对连接的争抢,解决惊群现象

2)

location / {
root html; ##收到网络请求后就在指定目录下寻找请求的资源;
index index.html index.htm;#设置网站的默认首页
}

3)Nginx.conf配置内容

**********************全局模块*******************
user nginx nginx; #配置用户和组
#user nobody;
worker_processes 1; #配置运行nginx生成的worker process数 #error_log logs/error.log; #配置nginx进程生成的对错误日志的解析
#error_log logs/error.log notice;
#error_log logs/error.log info; #pid logs/nginx.pid; #进程pid的文件的存放路径
**********事件模块********************************
events {
use epoll; #配置事件驱动模型
worker_connections 1024; #配置最大的连接数
}
****************http,server,location模块*********
http {
include mime.types; #定义MIME-Type
default_type application/octet-stream;
sendfile on; #允许使用sendfile方式传输
keepalive_timeout 65; ###配置连接超时间件
server {
listen 80;
server_name localhost;
#access_log logs/host.access.log main;#配置请求日志的存放路径 location / {
root html; #配置请求服务资源的根目录
index index.html index.htm;##设置网站的默认首页
}

nginx的简单介绍的更多相关文章

  1. WebSocket简单介绍

    Java后端WebSocket的Tomcat实现 一.WebSocket简单介绍 随着互联网的发展,传统的HTTP协议已经很难满足Web应用日益复杂的需求了.近年来,随着HTML5的诞生,WebSoc ...

  2. Nginx负载均衡介绍

    Nginx真心牛逼 nginx不单可以作为强大的web服务器,也可以作为一个反向代理服务器,而且nginx还可以按照调度规则实现动态.静态页面的分离,可以按照轮询.ip哈希.URL哈希.权重等多种方式 ...

  3. nginx知识点简单回顾

    html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,h ...

  4. Linux安装Nginx以及简单理解

    1.Nginx简单介绍 ①.Nginx:一个高性能的HTTP和反向代理服务器,高并发处理很不错. ②.反向代理:在计算机世界里,由于单个服务器的处理客户端(用户)请求能力有一个极限,当用户的接入请求蜂 ...

  5. 3.Nginx常用功能介绍

    Nginx常用功能介绍 Nginx反向代理应用实例 反向代理(Reverse Proxy)方式是指通过代理服务器来接受Internet上的连接请求,然后将请求转发给内部网络上的服务器,并且从内部网络服 ...

  6. Docker的简单介绍及使用

    Docker介绍 Docker是Docker.Inc公司开源的一个基于LXC技术之上构建的Container容器引擎,源代码托管在GitHub上,基于Go语言并遵从Apache2.0协议开源. Doc ...

  7. nginx搭建简单的图片服务器

    传统项目一般实现图片上传的话,都会在tomcat下面建立一个图片文件夹,上传成功后,用户可以直接访问, http://ip:port/project/images/xxx.jpg; 这样在用户量少的时 ...

  8. web服务的简单介绍及apache服务的安装

    一,web服务的作用:  是指驻留于因特网上某种类型计算机的程序,可以向浏览器等Web客户端提供文档.可以放置网站文件,让全世界浏览:   可以放置数据让全世界下载.目前最主流的三个Web服务器是Ap ...

  9. 转:Linux下使用Nginx搭建简单图片服务器

    最近经常有人问图片上传怎么做,有哪些方案做比较好,也看到过有关于上传图片的做法,但是都不是最好的,今天再这里简单讲一下Nginx实现上传图片以及图片服务器的大致理念. 如果是个人项目或者企业小项目,仅 ...

随机推荐

  1. 12个Sublime Text应用技巧[转载]

    本文为您提供Sublime Text编辑器的12个技巧和诀窍,深入挖掘这个看似简洁的代码编辑器,背后所隐藏的实现各种高级功能的无限可能. 1) 选择 以下是一些Sublime Text选择文本的快捷键 ...

  2. Git-Runoob:Git Github

    ylbtech-Git-Runoob:Git Github 1.返回顶部 1. Git 远程仓库(Github) Git 并不像 SVN 那样有个中心服务器. 目前我们使用到的 Git 命令都是在本地 ...

  3. Jmeter测试工具的下载使用

    Jmeter是一个非常好用的压力测试工具.  Jmeter用来做轻量级的压力测试,非常合适,只需要十几分钟,就能把压力测试需要的脚本写好.

  4. Thymeleaf 页面表达式基础

    转自:http://www.cnblogs.com/vinphy/p/4674247.html#undefined (一)Thymeleaf 是个什么?      简单说, Thymeleaf 是一个 ...

  5. apache配置静态缓存

    配置静态缓存:节省带宽,加快访问速度,提高用户体验.<IfModule mod_expires.c> ExpiresActive on ExpiresByType image/gif &q ...

  6. mysql主从复制架构配置

    第一个mysql1.下载mysql,解压,移动解压后的目录到指定目录下. 如:mv /usr/local/src/mysql-5.1.. /usr/local/mysql 创建mysql用户, use ...

  7. 阶段3 2.Spring_10.Spring中事务控制_10spring编程式事务控制2-了解

    在业务层声明 transactionTemplate 并且声称一个set方法等着spring来注入 在需要事物控制的地方执行 execute.但是这个execute需要一个参数 需要的参数是Trans ...

  8. Activity启动场景Task分析(二)

    场景分析 下面通过启动Activity的代码来分析一下: 1.桌面 首先,我们看下处于桌面时的状态,运行命令: adb shell dumpsys activity 结果如下 ACTIVITY MAN ...

  9. Redis 入门 3.3 散列类型

    3.3.1 介绍   散列类型(hash)的键值也是一种字典结构,其储存了字段(field)和字段值的映射,但字段值只能是字符串,不支持其他数据类型,换句话说,散列类型不能嵌套其他的数据类型.一个散列 ...

  10. 【神经网络与深度学习】【CUDA开发】caffe-windows win32下的编译尝试

    [神经网络与深度学习][CUDA开发]caffe-windows win32下的编译尝试 标签:[神经网络与深度学习] [CUDA开发] 主要是在开发Qt的应用程序时,需要的是有一个使用的库文件也只是 ...