在Ubuntu系統中,使用Nginx作為Web服務器時,可以通過配置Nginx的緩存功能來提高網站性能。以下是設置Nginx緩存的步驟:
安裝Nginx緩存模塊(可選): Nginx默認不包含緩存模塊,但你可以安裝第三方模塊,如ngx_cache_purge或nginx-cache-persist。這里以安裝nginx-cache-persist為例:
sudo apt-get update
sudo apt-get install nginx-cache-persist
修改Nginx配置文件:
打開Nginx配置文件,通常位于/etc/nginx/sites-available/
目錄下。例如,如果你要為域名example.com設置緩存,請編輯/etc/nginx/sites-available/example.com
文件。
sudo nano /etc/nginx/sites-available/example.com
在server
塊中添加緩存配置:
在server
塊中,添加以下代碼以配置緩存路徑、緩存鍵和緩存有效期:
location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
expires 30d;
add_header Cache-Control "public";
add_header X-Cache-Status $upstream_cache_status;
proxy_cache_key "$scheme$request_method$host$request_uri";
proxy_cache_valid 200 30d;
proxy_cache_valid 404 1m;
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m max_size=1g inactive=60m use_temp_path=off;
proxy_cache my_cache;
proxy_cache_bypass $http_cache_control;
proxy_cache_revalidate on;
proxy_pass http://your_backend_server;
}
這里的配置表示:
proxy_cache_key
指令自定義緩存鍵。/var/cache/nginx
,緩存區域名為my_cache
,最大緩存大小為1GB,緩存文件在60分鐘后失效。proxy_cache
指令啟用緩存。proxy_cache_bypass
指令繞過緩存(如果客戶端發送了Cache-Control
請求頭)。proxy_cache_revalidate
指令啟用緩存重新驗證。保存并退出配置文件。
測試Nginx配置: 在重啟Nginx之前,先測試配置文件是否有語法錯誤:
sudo nginx -t
如果輸出顯示配置文件語法正確,繼續下一步。
重啟Nginx: 重啟Nginx以應用更改:
sudo systemctl restart nginx
現在,Nginx已經為指定的靜態文件啟用了緩存功能。你可以根據需要調整緩存設置,例如更改緩存有效期或添加其他文件類型。