溫馨提示×

Nginx如何實現緩存

小樊
38
2025-07-07 23:29:54
欄目: 編程語言

Nginx可以通過配置來實現緩存,以下是實現緩存的基本步驟:

1. 安裝Nginx和相關模塊

確保你已經安裝了Nginx,并且啟用了必要的模塊。通常,ngx_cache_purge模塊用于清除緩存,而ngx_pagespeed模塊可以自動優化緩存。

sudo apt-get update
sudo apt-get install nginx

2. 配置緩存路徑

在Nginx配置文件中(通常是/etc/nginx/nginx.conf/etc/nginx/sites-available/default),添加緩存路徑和相關設置。

http {
    # 緩存路徑
    proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m max_size=1g inactive=60m use_temp_path=off;

    server {
        listen 80;
        server_name example.com;

        location / {
            # 啟用緩存
            proxy_cache my_cache;
            proxy_cache_valid 200 302 10m;
            proxy_cache_valid 404 1m;

            proxy_pass http://backend_server;
            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;
        }

        # 清除緩存
        location = /purge {
            allow 127.0.0.1; # 允許本地訪問
            deny all; # 拒絕其他所有IP
            proxy_cache_purge my_cache $scheme://$host$request_uri;
        }
    }
}

3. 配置緩存規則

你可以根據需要配置不同的緩存規則,例如:

  • 緩存有效期proxy_cache_valid指令用于設置緩存的有效期。
  • 緩存鍵proxy_cache_key指令用于自定義緩存鍵。
  • 緩存級別levels=1:2表示緩存分為兩級目錄。

4. 啟用緩存

確保在location塊中啟用了緩存,并且設置了相應的緩存指令。

5. 測試配置

在修改配置文件后,使用以下命令測試配置是否正確:

sudo nginx -t

如果沒有錯誤,重新加載Nginx以應用更改:

sudo systemctl reload nginx

6. 清除緩存

你可以使用purge方法清除緩存。例如,訪問http://example.com/purge?uri=/path/to/resource可以清除指定資源的緩存。

7. 監控緩存

你可以使用Nginx的日志文件來監控緩存的使用情況。例如,查看/var/log/nginx/access.log/var/log/nginx/cache.log。

通過以上步驟,你可以在Nginx中實現基本的緩存功能。根據具體需求,你可以進一步優化和擴展緩存配置。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女