<!-- review: finished -->

<a id="http-mirror"></a>

# Mirror

该模块通过创建后台镜像子请求来实现对原始请求的镜像。对镜像子请求的响应将被忽略。

<a id="configuration-example-30-1"></a>

## 配置示例

```nginx
location / {
    mirror /mirror;
    proxy_pass http://backend;
}

location = /mirror {
    internal;
    proxy_pass http://test_backend$request_uri;
}
```

<a id="directives-31-1"></a>

## 指令

<a id="index-0"></a>

<a id="id3"></a>

### mirror

| [语法](https://cn.angie.software//angie/docs/configuration/configfile.md#configfile)   | `mirror` uri | `off`;   |
|--------------------------------------------------------------------------------------|-------------------------|
| 默认值                                                                                  | `mirror off;`           |
| [上下文](https://cn.angie.software//angie/docs/configuration/configfile.md#configfile)  | http, server, location  |

设置原始请求将被镜像到的 URI。可以在同一配置级别指定多个镜像。

<a id="index-1"></a>

<a id="mirror-request-body"></a>

### mirror_request_body

| [语法](https://cn.angie.software//angie/docs/configuration/configfile.md#configfile)   | `mirror_request_body` `on` | `off`;   |
|--------------------------------------------------------------------------------------|---------------------------------------|
| 默认值                                                                                  | `mirror_request_body on;`             |
| [上下文](https://cn.angie.software//angie/docs/configuration/configfile.md#configfile)  | http, server, location                |

指示客户端请求体是否被镜像。当启用时,客户端请求体将在创建镜像子请求之前被读取。在这种情况下,由 [proxy_request_buffering](https://cn.angie.software//angie/docs/configuration/modules/http/http_proxy.md#proxy-request-buffering)、[fastcgi_request_buffering](https://cn.angie.software//angie/docs/configuration/modules/http/http_fastcgi.md#fastcgi-request-buffering)、[scgi_request_buffering](https://cn.angie.software//angie/docs/configuration/modules/http/http_scgi.md#scgi-request-buffering) 和 [uwsgi_request_buffering](https://cn.angie.software//angie/docs/configuration/modules/http/http_uwsgi.md#uwsgi-request-buffering) 指令设置的非缓冲客户端请求体代理将被禁用。

```nginx
location / {
    mirror /mirror;
    mirror_request_body off;
    proxy_pass http://backend;
}

location = /mirror {
    internal;
    proxy_pass http://log_backend;
    proxy_pass_request_body off;
    proxy_set_header Content-Length "";
    proxy_set_header X-Original-URI $request_uri;
}
```
