Nginx 프록시 캐시 업데이트 구성, 웹 사이트 변경에 대한 실시간 응답
요약: 이 기사에서는 Nginx 프록시 캐시 업데이트 구성을 사용하여 웹 사이트 콘텐츠가 변경될 때 업데이트에 즉시 응답하고 웹 사이트 성능과 사용자 경험을 개선하는 방법을 소개합니다. 동시에 독자들이 이 기능을 더 잘 이해하고 적용할 수 있도록 몇 가지 실용적인 코드 예제를 제공할 것입니다.
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m max_size=10g inactive=60m; proxy_cache_key "$request_method|$host|$request_uri"; proxy_cache_valid 200 301 302 10m; proxy_cache_use_stale error timeout updating http_500 http_502 http_503 http_504;
그 중 proxy_cache_path
는 캐시 파일의 저장 경로와 크기 제한을 지정하고, proxy_cache_key
는 캐시 키 이름을 정의합니다. , 요청된 URL이 변경될 때마다 캐시가 새로 고쳐질 수 있는지 확인하세요. proxy_cache_valid
는 proxy_cache_use_stale
의 캐시 유효 기간을 지정하는 데 사용됩니다. 오류가 발생하면 만료된 캐시를 사용할 수 있습니다. proxy_cache_path
指定了缓存文件的存储路径和大小限制;proxy_cache_key
定义了缓存的键名,保证每次请求URL有所变化时能够刷新缓存;proxy_cache_valid
用于指定HTTP响应码200、301、302的缓存有效期;proxy_cache_use_stale
则是在源服务器出现错误时,允许使用过期的缓存。
if ( $request_method = POST ) { add_header X-Nginx-Cache "BYPASS"; proxy_cache_bypass $http_cache_control; proxy_no_cache 1; }
上述配置将捕获POST请求,并在响应头中添加X-Nginx-Cache
字段,用于标识该请求需要绕过缓存。同时,proxy_cache_bypass
和proxy_no_cache
指令将确保这个请求不会被缓存。
#!/bin/bash curl -X PURGE http://localhost/page1 curl -X PURGE http://localhost/page2 curl -X PURGE http://localhost/page3
注意到上述脚本中使用了curl
X-Nginx-Cache
필드를 추가합니다. 헤더 요청이 캐싱을 우회해야 함을 식별합니다. 동시에 proxy_cache_bypass
및 proxy_no_cache
지시문은 이 요청이 캐시되지 않도록 보장합니다. curl
명령을 사용하여 특정 페이지의 캐시를 지우기 위해 Nginx에 PURGE 요청을 보냅니다. 실제 상황에 따라 캐시를 새로 고쳐야 하는 페이지 URL을 스크립트에 추가할 수 있습니다. 그런 다음 예약된 작업 도구(예: cron)를 사용하여 이 스크립트를 정기적으로 실행하여 캐시에 대한 예약된 업데이트를 수행합니다. 🎜🎜🎜결론🎜이 글에서는 Nginx 프록시 캐시 업데이트 구성을 사용하여 웹사이트 콘텐츠가 변경될 때 즉각적인 응답을 얻는 방법을 소개합니다. Nginx 구성 파일을 수정하고, 캐시 저장 경로와 업데이트 규칙을 설정하고, 정기적으로 실행되는 스크립트를 작성하여 이 기능을 수행합니다. 이 기능을 사용하면 웹 사이트 성능과 사용자 경험을 효과적으로 개선하고 사용자 요청으로 인해 소스 서버에 가해지는 부담을 줄일 수 있습니다. 독자들이 이 글의 소개와 샘플 코드를 통해 Nginx의 프록시 캐시 업데이트 구성을 더 잘 이해하고 적용할 수 있기를 바랍니다. 🎜🎜위 내용은 웹사이트 변경에 실시간으로 대응하기 위한 Nginx 프록시 캐시 업데이트 구성의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!