> For the complete documentation index, see [llms.txt](https://close.gitbook.io/yun-wei-bi-ji/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://close.gitbook.io/yun-wei-bi-ji/centos/nginx/ngx-fan-xiang-dai-li-jin-yong-huan-cun.md).

# Ngx 反向代理禁用缓存

反向代理中禁用缓存并允许传输 cookies、headers 等其他参数到源地址

```
server {
    listen 80;
    server_name example.com;

    location / {
        proxy_pass http://backend_server;

        # 禁止缓存
        proxy_cache_bypass $http_cache_control;
        proxy_no_cache $http_pragma $http_authorization;
        proxy_cache off;

        # 允许传输 cookies、headers 等其他参数到源地址
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "Upgrade";
    }
}
```

* `proxy_cache_bypass` 指令根据客户端请求中的 Cache-Control 头信息来判断是否绕过缓存。如果客户端请求中包含 `Cache-Control: no-cache`，则绕过缓存。
* `proxy_no_cache` 指令根据客户端请求中的 Pragma 头信息和 Authorization 头信息来判断是否不使用缓存。
* `proxy_cache` 指令用于完全禁用代理服务器上的缓存功能。
* `proxy_set_header` 指令用于设置需要传输到源地址的 headers。这里设置了 Host、X-Real-IP、X-Forwarded-For、X-Forwarded-Proto、Upgrade 和 Connection 等头信息

通过这些指令的组合，可以在 Nginx 反向代理中禁用缓存并允许传输 cookies、headers 等其他参数到源地址
