nginx的主配置(nginx.conf)说明

  1. #worker进程数量
  2. worker_processes 1;
  3. #错误日志
  4. error_log logs/error.log;
  5. #进程ID文件
  6. pid logs/nginx.pid;
  7.  
  8. #事件区块开始
  9. events {
  10. #worker进程支持的最大连接数
  11. worker_connections 1024;
  12. }
  13.  
  14. #http区块开始
  15. http {
  16. #nginx支持的媒体类型库文件
  17. include mime.types;
  18. #默认的媒体文件
  19. default_type application/octet-stream;
  20. #开启高效传输模式
  21. sendfile on;
  22. #连接超时
  23. keepalive_timeout 65;
  24.  
  25. #一个server区块开始
  26. server {
  27. #端口号
  28. listen 80;
  29. #服务主机名
  30. server_name localhost;
  31. #编码
  32. charset utf-8;
  33. #location区块
  34. location / {
  35. #站点根目录
  36. root html;
  37. #默认首页文件
  38. index index.html index.htm;
  39. }
  40. #出现对应状态码时,访问50x.html
  41. error_page 500 502 503 504 /50x.html;
  42. #访问50x.html时指定目录为html
  43. location = /50x.html {
  44. root html;
  45. }
  46. }
  47. }

nginx的状态信息功能

  1. location / {
  2. #打开状态信息开关
  3. stub_status on;
  4. access_log off;
  5. allow 127.0.0.1/24;
  6. deny all;
  7. }

nginx错误日志配置

关键字 日志文件 错误日志级别[debug|info|notice|warn|error|crit|alert|emerg]

  1. error_log logs/error.log notice;

nginx访问日志配置

#定义日志格式

  1. log_format main '$remote_addr - $remote_user [$time_local] "$request" '
  2. '$status $body_bytes_sent "$http_referer" '
  3. '"$http_user_agent" "$http_x_forwarded_for"';

#格式参数说明

参数 说明 示例
$remote_addr 客户端地址 211.28.65.253
$remote_user 客户端用户名称 --
$time_local 访问时间和时区 18/Jul/2012:17:00:01 +0800
$request 请求的URI和HTTP协议 "GET /article-10000.html HTTP/1.1"
$http_host 请求地址,即浏览器中你输入的地址(IP或域名) www.it300.com
192.168.100.100
$status HTTP请求状态 200
$upstream_status upstream状态 200
$body_bytes_sent 发送给客户端文件内容大小 1547
$http_referer url跳转来源 https://www.baidu.com/
$http_user_agent 用户终端浏览器等信息 "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; SV1; GTB7.0; .NET4.0C;
$ssl_protocol SSL协议版本 TLSv1
$ssl_cipher 交换数据中的算法 RC4-SHA
$upstream_addr 后台upstream的地址,即真正提供服务的主机地址 10.10.10.100:80
$request_time 整个请求的总时间 0.205
$upstream_response_time 请求过程中,upstream响应时间 0.002

#访问日志配置

  1. access_log logs/access.log main;

#在高并发的网站下,日志配置可以如下

  1. access_log logs/access.log main gzip buffer=32k flush=5s;

nginx的location作用
location的作用是根据用户请求的URI来执行不同的应用。

  1. location [= | ~ | ~* | ^~] URI {
  2. ... ...
  3. }
  1. ~用于区分大小写
  2. ~*用于不区分大小写
  3. ^~进行常规字符串匹配检查后,不做正则表达式的检查

例如:

  1. location = / {
  2. #精确匹配/
  3. }
  4. location / {
  5. #所有location不能匹配后的默认匹配
  6. }
  7. location /www/ {
  8. #匹配常规字符串,有正则,优先匹配正则
  9. }
  10. location ^~ /imgs/ {
  11. #匹配常规字符串,不做正则匹配检查
  12. }
  13. location ~* \.(gif|jpg|jpeg)$ {
  14. #正则匹配
  15. }

nginx的rewrite配置

rewrite指令语法

  1. rewrite regex replacement [flag];

例如:

  1. rewrite ^/(.*) http://www.baidu.com/$1 permanent;

其中$1表示前面小括号匹配的部分。

  1. flag参数说明:
  2. last 本条规则匹配完成后,继续向下匹配新的规则
  3. break 本条规则匹配完即终止
  4. redirect 返回302临时重定向
  5. permanent 返回301永久重定向

上述,last和break用来实现URL重写,redirect和permanet用来实现URL跳转

例如:

  1. server {
  2. listen 80;
  3. server_name book.site.com;
  4. location / {
  5. root html/book;
  6. index index.html index.htm;
  7. }
  8. if($http_host ~* "^(.*)\.site\.com$") {
  9. set $domain $1;
  10. rewrite ^(.*) http://www.site.com/$domain/test.html break;
  11. }
  12. }

当我们访问book.site.com时URL重写为www.site.com/book/test.html

nginx常用配置说明的更多相关文章

  1. nginx 常用配置说明

    一.location 配置 1.1 语法规则: location [=|~|~*|^~] /uri/ { … }= 开头表示精确匹配^~ 开头表示uri以某个常规字符串开头,理解为匹配 url路径即可 ...

  2. 170816、nginx常用配置说明

    #user nobody; #开启进程数 <=CPU数  worker_processes 1; #错误日志保存位置 #error_log logs/error.log; #error_log ...

  3. nginx的重试机制以及nginx常用的超时配置说明

    nginx的重试机制 现在对外服务的网站,很少只使用一个服务节点,而是部署多台服务器,上层通过一定机制保证容错和负载均衡. nginx就是常用的一种HTTP和反向代理服务器,支持容错和负载均衡. ng ...

  4. 【Linux】nginx常用命令

    相关内容链接 Centos之安装Nginx及注意事项 [nginx]详细配置说明 nginx常用命令 [重新加载配置]sudo nginx -s reload [打开nginx配置]sudo vim ...

  5. Nginx常用功能配置一

    Nginx常用功能配置 参数include配置 说明:如果日常工作中server标签存在太多,可以采用include配置模式,Nginx的主配置文件包含的所有虚拟主机的子配置文件会统一放入extra目 ...

  6. Nginx 常用全局变量 及Rewrite规则详解

    每次都很容易忘记Nginx的变量,下面列出来了一些常用 $remote_addr //获取客户端ip $binary_remote_addr //客户端ip(二进制) $remote_port //客 ...

  7. nginx 常用的 URL 重写方法

    转自:http://www.jbxue.com/article/4727.html Nginx中一些常用的URL 重写方法介绍,有需要的朋友可以参考下.url重写应该不陌生,不管是SEO URL 伪静 ...

  8. 3.Nginx常用功能介绍

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

  9. Nginx常用配置实例(4)

    Nginx作为一个HTTP服务器,在功能实现方面和性能方面都表现得非常卓越,完全可以与Apache相媲美,几乎可以实现Apache的所有功能,下面就介绍一些Nginx常用的配置实例,具体包含虚拟主机配 ...

随机推荐

  1. FDD vs TDD

    双工方式 FDD vs TDD  频分双工(FDD) 收发信各占用一个频率. 优点是收.发信号同时进行,时延小,技术成熟,缺点是设备成本高.  时分双工(TDD) 收发信使用同一个频率,但使用不同 ...

  2. How to use POST method in Tornado?

    http://stackoverflow.com/questions/10367981/how-to-use-post-method-in-tornado

  3. VS:error C3872: '0xe044': this character is not allowed in an identifier解决方法

     从网上粘贴代码到编译器中直接编译的话,会报这个错误,但是代码看上去是没有问题的,实际的原因是因为我们粘贴代码的时候粘贴了中文字符进来. 解决方法:就是把这段代码放到记事本里,选择替换把中文输入空 ...

  4. django从请求到响应的过程深入讲解

    django启动 我们在启动一个django项目的时候,无论你是在命令行执行还是在pycharm直接点击运行,其实都是执行'runserver'的操作,而ruserver是使用django自带的的we ...

  5. Xeon Phi 编程备忘

    ▶ 闲鱼的 Xeon Phi 3120A 配办公室的新 Xeon 服务器,记录一下环境安装过程. ● 原本尝试搭 Ubuntu 服务器,参考[https://software.intel.com/en ...

  6. 0_Simple__simpleTexture + 0_Simple__simpleTextureDrv

    使用纹理引用来旋转图片,并在使用了静态编译和运行时编译两种环境. ▶ 源代码:静态编译 #include <stdio.h> #include <windows.h> #inc ...

  7. 51. linux卸载jdk

    看有的资料上说有些Linux自带的有jdk1.4:如果自带的有jdk1.4的话首先要把jdk1.4卸载掉.具体做法: 输入命令: #rpm -qa | grep gcj 如果输出没有内容,说明没有jd ...

  8. MySQL中使用BIT属性

    如果是组合类型,用bit比较好,有那个类型,就将那以为设为1即可.不然还有将所有类型的组合求出来用map来存对应数字. 用bit,即省空间又方便. 注意用bit不能直接在记录里面直接填数据,要通过sq ...

  9. vue深入了解组件——自定义事件

    一.事件名 跟组件和prop不同,事件名不存在任何自动化的大小写转换.而是触发的事件名需要完全匹配监听这个事件所用的名称.举个例子,如果重复啊一个camelCase名字的事件: this.$emit( ...

  10. subnet partition

    例1:本例通过子网数来划分子网,未考虑主机数. 一家集团公司有12家子公司,每家子公司又有4个部门.上级给出一个172.16.0.0/16的网段,让给每家子公司以及子公司的部门分配网段. 思路:既然有 ...