nginx后端验证模块ngx_http_auth_request_module

  categories:nginx  tags:  author:

nginx验证模块ngx_http_auth_request_module
AuthRequestNginxModule(ngx_http_auth_request_module)
这个是nginx的一个验证模块

Here is auth request module, it allows authorization based on
subrequest result.  It works at access phase and therefore may be
nicely combined with other access modules (access, auth_basic) via
satisfy directive.
这个模块, 允许您的nginx通过发送请求到后端服务器(一般是应用服务器,例如tomcat,或者php等)进行请求, 并且根据请求决定是验证通过或者不通过。

使用方法如下:

Example … 阅读全文

web内容缓存 nginx高性能缓存详解

  categories:nginx  tags:  author:

内容缓存是显著提高web站点的性能最有效的方法之一。下面来说说nginx高性能缓存。

内容缓存的基本原则

nginx

对GET请求进行缓存。

使用:浏览器缓存,内容分发网络和/或反向代理缓存。

nginx

HTTP缓存机制:

1. 源服务器宣称的内容缓存能力。 主要是对http头信息来控制的。

2. 请求的客户端缓存能力,如GET请求。

nginx

nginx对哪些进行缓存?

1. 缓存没有 Set-Cookie 的GET和HEAD的响应。

2. 通过定义独特的原始URL,如proxy_cache_key。

3. 通过定义缓存时间,如X-Accel-Expires、Cache-Control、Expires。

nginx 操作

nginx

nginx配置

nginx

缓存的过程

nginx的可在下列情况下使用陈旧的内容,通过proxy_cache_use_stale指令定义。

nginx

不仅仅对HTTP缓存,还有其他的,如:

1. FastCGI  功能很像HTTP

2. Memcache 检索memcached服务器的内容(必须预先填充)

3. uwsgi and SCGI

如何理解这些

nginx

缓存仪表

$upstrem_cache_status 变量值有:MISS、BYPASS、EXPIRED、STALE、UPDATING、REVALDATED、HIT。

nginx

nginx

扩展状态监控… 阅读全文

nginx的HeadersMoreNginxModule模块功能

  categories:nginx  tags:  author:

模块地址:

https://github.com/openresty/headers-more-nginx-module

ngx_headers_more – Set and clear input and output headers…more than “add”!
设置和清除 http的输入和输出头

This module is not distributed with the Nginx source. See the installation instructions.
本模块不是标准模块, 安装需要参照最后的安装指令

Version

This document describes headers-more-nginx-module v0.25 released on 10 January … 阅读全文

ngx_http_userid_module模块基本指令整理

  categories:nginx  author:

原创文章,转载请指明出处并保留原文url地址

本文主要针对nginx的ngx_http_userid_module模块做简单介绍,本文具体包括如下指令:userid,userid_domain,userid_expires,userid_mark,userid_name,userid_p3p,userid_path,userid_service

ngx_http_userid_module模块为标示客户端设置合适的cookies。接受和设置的cookies能通过内嵌$uid_got 和 $uid_set变量获取,并记录到日志中。这个模块同apache的 mod_uid 模块不兼容。

Example Configuration

    userid         on;

    userid_name    uid;

    userid_domain  example.com;

    userid_path    /;

    userid_expires 365d;

    userid_p3p     ‘policyref="/w3c/p3p.xml", CP="CUR ADM OUR NOR STA NID"';

Nginx原文:

The ngx_http_userid_module module sets cookies suitable … 阅读全文

ngx_http_upstream_module模块基本指令整理

  categories:nginx  author:

原创文章,转载请指明出处并保留原文url地址

本文主要针对nginx的ngx_http_upstream_module模块做简单介绍,本文具体包括如下指令:upstream,server,ip_hash,keepalive,least_conn

ngx_http_upstream_module模块定义一组服务器,这个组服务器可以从proxy_pass,fastcgi_pass和memcached_pass指令中访问。

Example Configuration

upstream backend {

server backend1.example.com       weight=5;

server backend2.example.com:8080;

server unix:/tmp/backend3;

server backup1.example.com:8080   backup;

server backup2.example.com:8080   backup;

}

server {

location / {

proxy_pass http://backend;

}

}

Nginx原文:

The ngx_http_upstream_module module allows to define groups of … 阅读全文

ngx_http_sub_module模块基本指令整理

  categories:nginx  author:

原创文章,转载请指明出处并保留原文url地址

本文主要针对nginx的ngx_http_sub_module模块做简单介绍,本文具体包括如下指令:sub_filter,sub_filter_once,sub_filter_types

该ngx_http_sub_module模块是一个过滤器,通过使用特定的字符串替换另外一个字符串来改变相应。

这个模块是不是默认内建模块,它应–with-http_sub_module参数启用。

配置示例

    location / {

        sub_filter      </head>

            ‘</head><script language="javascript" src="$script"></script>';

        sub_filter_once on;

    }

Nginx原文:

The ngx_http_sub_module module is a filter that modifies a response by replacing one specified string by another.

This … 阅读全文

ngx_http_ssl_module模块基本指令整理2

  categories:nginx  author:

原创文章,转载请指明出处并保留原文url地址

本文主要针对nginx的ngx_http_ssl_module模块做简单介绍,本文具体包括如下指令:ssl_session_timeout,ssl_stapling,ssl_stapling_file,ssl_stapling_responder,ssl_stapling_verify,ssl_trusted_certificate,ssl_verify_client,ssl_verify_depth

11. ssl_session_timeout

syntax:

ssl_session_timeout      time;

default:

ssl_session_timeout 5m;

context:

http, server

指定客户可以利用存储在缓存会话参数的时间

Nginx原文:

Specifies a time during which a client may reuse the session parameters stored in a cache.

12. ssl_stapling

syntax:

ssl_stapling  on | off;

default:

ssl_stapling

阅读全文

ngx_http_ssl_module模块基本指令整理1

  categories:nginx  author:

原创文章,转载请指明出处并保留原文url地址

本文主要针对nginx的ngx_http_ssl_module模块做简单介绍,本文具体包括如下指令:ssl,ssl_certificate,ssl_certificate_key,ssl_ciphers,ssl_client_certificate,ssl_crl,ssl_dhparam,ssl_prefer_server_ciphers,ssl_protocols,ssl_session_cache

ngx_http_ssl_module模块提供对HTTPS必要的支持。

这个模块不是系统默认的内建模块, 需要采用–with-http_ssl_module指令开启相关的配置。

这个模块需要OpenSSL库的支持

配置示例:

为了减低服务器的负载建议进行如下:

To reduce the processor load it is recommended to

设置工作处理器数等于cpu处理器数(具体应该是cpu核心数)

    set the number of worker processes equal to the number of processors,

将keep-alive连接选项打开

enable keep-alive connections,

打开session共享缓存

enable shared session cache,… 阅读全文

Nginx ngx_http_ssi_module模块基本指令整理

  categories:nginx  tags:  author:

原创文章,转载请指明出处并保留原文url地址

本文主要针对nginx的ngx_http_ssi_module模块做简单介绍,本文具体包括如下指令:ssi,ssi_min_file_chunk,ssi_silent_errors,ssi_types,ssi_value_length

ngx_http_ssi_module模块是处理由后端服务器返回response中SSI(服务器端包含)指令的一个过滤器模块。目前,支持的SSI命令是不完整的。

配置示例如下:

location / {

ssi on;

}

Nginx原文:

The ngx_http_ssi_module module is a filter that processes SSI (Server Side Includes) commands in responses passing through it. Currently, the list of supported SSI commands is incomplete.

Example … 阅读全文

Nginx ngx_http_split_clients_module模块基本指令整理

  categories:nginx  author:

原创文章,转载请指明出处并保留原文url地址

本文主要针对nginx的ngx_http_split_clients_module模块做简单介绍,本文具体包括如下指令:split_clients

该ngx_http_split_clients_module模块创建适合于A/B测试变量,也称为分割测试。

(A/B 测试通常用来测量两个或多个方案在某一单一维度上的绩效表现。通俗的说,就是用尽可能科学严谨的方法,对比方案之间的优劣。这种方法虽然是穿白大褂的科学家发明并用于科学实验,但现在它已经被善于借鉴的市场专家、用户体验专家们广泛地应用在市场研究、产品界面方案评估等更“感性”的领域。

对于界面改进设计,A/B测试通常由控制版本和对照版本组成,即A为当前线上方案,B为改进方案。通过小流量线上平台测试,考察对方案评估比较重要的绩效数据,如点击率、停留时间、出错率等。

为什么要进行A/B测试?

首先,在用户体验行业,哪个方案好哪个方案要被拍掉这样的讨论、辩论、争论无时无刻不在世界各地重复上演。不知道听谁的,主要是因为大家的理由都来自于“推理”。虽然UCD已经深入人心,但仍然避免不了博弈各方自诩为用户代言人,推想用户的行为。而此时,A/B测试的威力就变得特别显眼。它在用于界面方案评估时可以提供客观、准确的数据。哪种方案点击率高、哪种方案更有利于将用户的点击转化为在线购买行为等问题,可以通过数据获得清晰、明确的结论。让数据说话,大家不知道要少费多少口舌,为公司省下多少矿泉水呢。)

示例如下:

    http {

        split_clients "${remote_addr}AAA" $variant {

                       0.5%               .one;

                       2.0%               .two;

                       *                  "";

        }

        server {

            location / {

                index index${variant}.html;

Nginx原文:

The … 阅读全文



快乐成长 每天进步一点点