Nginx速查手册及常见问题

Nginx是一款轻量级的HTTP服务器,采用事件驱动的异步非阻塞处理方式框架,这让其具有极好的IO性能,时常用于服务端的反向代理和负载均衡。

常用命令

使用自定义配置文件启动

nginx -c /opt/nginx/config/nginx.conf 

柔和重启

nginx -s reload

优雅停止服务

nginx -s quit

强制停止服务

nginx -s stop

配置文件检查

nginx -t

常用配置

反向代理

server {
  listen 80;
  server_name localhost;
  client_max_body_size 1024M;

  location / {
    proxy_pass http://localhost:8080;
    proxy_set_header Host $host:$server_port;
  }
}

负载均衡

upstream test {
  server localhost:8080;
  server localhost:8081;
}
server {
  listen 81;
  server_name localhost;
  client_max_body_size 1024M;

  location / {
    proxy_pass http://test;
    proxy_set_header Host $host:$server_port;
  }
}

http服务器

server {
  listen 80;
  server_name localhost;
  client_max_body_size 1024M;

  location / {
    root e:\wwwroot;
    index index.html;
  }
}

动静分离

upstream test{
  server localhost:8080;
  server localhost:8081;
}   

server {
  listen 80;
  server_name localhost;  

  location / {
    root d:\wwwroot;
    index index.html;
  }  

  --所有静态请求都由nginx处理,存放目录为html
  location ~ \.(gif|jpg|jpeg|png|bmp|swf|css|js)$ {
    root d:\wwwroot;
  }  

  --所有动态请求都转发给tomcat处理
  location ~ \.(jsp|do)$ {
    proxy_pass http://test;
  }  

  error_page 500 502 503 504 /50x.html;
  location = /50x.html {
    root d:\wwwroot;
  }
}

正向代理

resolver 114.114.114.114 8.8.8.8;
  server {
    resolver_timeout 5s;
    listen 81;
    access_log d:\wwwroot\proxy.access.log;
    error_log d:\wwwroot\proxy.error.log;
    location / {
      proxy_pass http://$host$request_uri;
    }
  }
#防盗链
location ~* \.(gif|jpg|png)$ {
    # 只允许 192.168.0.1 请求资源
    valid_referers none blocked 192.168.0.1;
    if ($invalid_referer) {
       rewrite ^/ http://$host/logo.png;
}

根据文件类型设置过期时间

location ~.*\.css$ {
    expires 1d;
    break;
}
location ~.*\.js$ {
    expires 1d;
    break;
}

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
    access_log off;
    expires 15d; #保存15天
    break;
}

匹配规则

location = / {
  # 精确匹配 / ,主机名后面不能带任何字符串
  [ configuration A ]
}
location / {
  # 因为所有的地址都以 / 开头,所以这条规则将匹配到所有请求
  # 但是正则和最长字符串会优先匹配
  [ configuration B ]
location /documents/ {
  # 匹配任何以 /documents/ 开头的地址,匹配符合以后,还要继续往下搜索
  # 只有后面的正则表达式没有匹配到时,这一条才会采用这一条
  [ configuration C ]
location ~ /documents/Abc {
  # 匹配任何以 /documents/Abc 开头的地址,匹配符合以后,还要继续往下搜索
  [ configuration CC ]
location ^~ /images/ {
  # 匹配任何以 /images/ 开头的地址,匹配符合以后,停止往下搜索正则,采用这一条。
  [ configuration D ]
location ~* \.(gif|jpg|jpeg)$ {
  # 匹配所有以 gif,jpg或jpeg 结尾的请求
  # 然而,所有请求 /images/ 下的图片会被 config D 处理,因为 ^~ 到达不了这一条正则
  [ configuration E ]
location /images/ {
  # 字符匹配到 /images/,继续往下,会发现 ^~ 存在
  [ configuration F ]
location /images/abc {
  # 最长字符匹配到 /images/abc,继续往下,会发现 ^~ 存在
  # F与G的放置顺序是没有关系的
  [ configuration G ]
location ~ /images/abc/ {
  # 只有去掉 config D 才有效:先最长匹配 config G 开头的地址,继续往下搜索,匹配到这一条正则,采用
    [ configuration H ]

常见问题

# root 和 alias的区别?
**root**
location /i/ {
  root /data/wwwroot;
}
真实的路径是root指定的值加上location指定的值,即/data/wwwroot/i/...

**alias**
location /i/ {
  alias /data/wwwroot/;
}
在服务器查找的资源路径是: /data/wwwroot/...

到此这篇关于Nginx速查手册的文章就介绍到这了,更多相关Nginx速查手册内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • nginx命令参数用法详细介绍

    nginx命令参数用法详细介绍 nginx命令:启动nginx 在Windows上安装好nginx后,我们需要启动nginx服务,启动nginx服务的命令行操作主要有两种方式,即 C:/nginx-0.8.53>nginx.exe 或者 C:/nginx-0.8.53>start nginx 启动nginx命令说明:需要注意,由于nginx默认端口也是80端口,如果此时你的机器上开启了Apache或者IIS服务,切忌在启动nginx之前务必关闭IIS或Apache服务,否则nginx启动命令不

  • Nginx日志统计分析的常用命令总结

    本文主要给大家总结了关于Nginx日志统计分析的一些常用命令,分享出来供大家参考学习,下面来一起看看详细的介绍: 一.IP相关统计 统计IP访问量 awk '{print $1}' access.log | sort -n | uniq | wc -l 查看某一时间段的IP访问量(4-5点) grep "07/Apr/2017:0[4-5]" access.log | awk '{print $1}' | sort | uniq -c| sort -nr | wc -l 查看访问最频繁

  • Nginx速查手册及常见问题

    Nginx是一款轻量级的HTTP服务器,采用事件驱动的异步非阻塞处理方式框架,这让其具有极好的IO性能,时常用于服务端的反向代理和负载均衡. 常用命令 使用自定义配置文件启动 nginx -c /opt/nginx/config/nginx.conf 柔和重启 nginx -s reload 优雅停止服务 nginx -s quit 强制停止服务 nginx -s stop 配置文件检查 nginx -t 常用配置 反向代理 server { listen 80; server_name loc

  • Web开发人员常用速查手册 英文集合推荐

    为了方便各位朋友,本文收集了一些对Web开发人员非常有用的手册,记得推荐一下哦. HTML 速查手册 HTML/XTML in one page HTML5: The Evolution of Web Standards by James Sugrue (X)HTML Elements and Attributes Doctype Declarations (DTDs) XHTML Character Entity Reference GoSquared HTML Help Sheet CSS

  • 在网上找的创建《CMD命令速查手册》的批处理

    在线演示:CMD 命令速查手册 复制代码 代码如下: @echo off & setlocal EnableDelayedExpansion echo.======================================== echo 开始创建<CMD命令速查手册>,请稍候-- echo 创建网页文件头-- >CMDHelp.htm echo ^<head^> >>CMDHelp.htm echo ^<title^>CMD命令速查手册^

  • 图片格式的JavaScript和CSS速查手册

    JavaScript对象.方法.函数.属性速查:CSS属性速查:

  • 电脑"蓝屏"原因之速查手册

    死机是令操作者颇为烦恼的事情.死机时的表现多为"蓝屏",无法启动系统,画面"定格"无反应,鼠标.键盘无法输入,软件运行非正常中断等.尽管造成死机的原因很多,但是万变不离其宗,其原因永远也脱离不了硬件与软件两方面.  一.由硬件原因引起的死机  [散热不良]    显示器.电源和CPU在工作中发热量非常大,因此保持良好的通风状况非常重要,如果显示器过热将会导致色彩.图象失真甚至缩短显示器寿命.工作时间太长 也会导致电源或显示器散热不畅而造成电脑死机.CPU的散热是关系

  • Objective-C和Swift的转换速查手册(推荐)

    前言 如果你正要从Objective-C过渡到Swift,或反过来,一个在两种语言间显示等效代码的小手册会很有帮助.本文内容就是这些:苹果开发者的红宝书,包含变量,集合,函数,类等等. 下面例子中,上面是Objective-C代码,下面是等效的Swift代码.必要的地方我会给一些备注来帮助你理解. 变量与常量 创建一个变量 //Objective-C NSInteger score = 556; // NSString *name = @"Taylor"; // BOOL logged

  • DOM属性用法速查手册第1/4页

    object 返回包含的对象. offscreenBuffering 设置或获取对象在对用户可见之前是否要先在屏幕外绘制. offsetHeight 获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度. offsetLeft 获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置. offsetParent 获取定义对象 offsetTop 和 offsetLeft 属性的容器对象的引用. offsetTop 获取对象相对于版面或由 offs

  • DOM相关内容速查手册

    object 返回包含的对象.   offscreenBuffering 设置或获取对象在对用户可见之前是否要先在屏幕外绘制.   offsetHeight 获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度.   offsetLeft 获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置.   offsetParent 获取定义对象 offsetTop 和 offsetLeft 属性的容器对象的引用.   offsetTop 获取对象相对

  • CSS Hack 汇总速查手册浏览器兼容必会

    屏蔽IE浏览器(也就是IE下不显示) 复制代码 代码如下: *:lang(zh) select {font:12px !important;} /*FF 可见,特别声明:由于Opera最新的更新,此句目前已经成为FF的专用HACK*/ select:empty {font:12px !important;} /*safari可见*/ 这里select是选择符,根据情况更换.第二句是MAC上safari浏览器独有的. 仅IE7识别 复制代码 代码如下: *+html {-} 当面临需要只针对IE7

  • HTML,CSS,JavaScript速查表推荐

    事实上, 速查表 就是来帮助我们把日常中最常用到的信息聚集起来,方便使用,使我们做工作时更有效率.有了它们,免去了你的大脑花额外时间去记忆它们的烦恼--你只需要打开简表,马上能查到你想要的信息. 这篇文章里,你可以看到 最实用的HTML,CSS,JavaScript速查表 ,它们可以当作参考资料,备忘录,能帮助你以最快的速度找到想要的信息. 看看这些简表是不是你想要的,请在文章下面留下你的建议,谢谢! HTML HTML帮助手册 HTML速查手册 HTML特殊字符速查表 Dreamweaver

随机推荐