>백엔드 개발 >PHP 튜토리얼 >CDN이 동적 파일을 캐시하도록 하지 마세요

CDN이 동적 파일을 캐시하도록 하지 마세요

WBOY
WBOY원래의
2016-07-28 08:27:351456검색

이렇습니다. 원래 IMG 및 JS와 같은 일부 정적 리소스를 캐시한 CDN에 도메인 이름이 있습니다. 그러나 비즈니스 요구로 인해 일부 사용자 피드백을 수용하기 위한 인터페이스로 새로운 동적 PHP 파일을 추가했습니다.
그러다가 오늘 온라인에서 이 인터페이스에 작은 문제가 발생했습니다. 디버깅에 가서 코드를 변경한 후 새로 고침이 작동하지 않는 것을 발견했는데, 링크의 매개변수를 변경하면 코드가 작동하는 것으로 의심되었습니다. 링크는 CDN에 의해 ​​캐시되었지만 운영 및 유지 관리에 따르면 CDN은 동적 파일을 캐시하지 않습니다. 그런 다음 nginx 로그를 테스트하고 웹 페이지를 새로 고쳤습니다. 실제로 액세스 로그가 없었습니다.
마지막으로 운영 및 유지관리팀에서 분석을 위해 CDN 공급업체에 링크를 보냈고 실제로 캐시된 것으로 확인되었습니다. CDN은 원본 사이트의 정책을 따르도록 구성되어 있으며 기본적으로 PHP 파일이 캐시되지 않도록 설정되어 있지 않으므로 24시간 동안 캐시합니다.
PHP가 캐시되지 않도록 구성하려면 nginx 구성 파일 위치에 header

<code><span>//配置PHP不缓存</span>
location ~ <span>.</span><span>*\</span><span>.</span>(php<span>|</span>php5)<span>?</span>$ {
        add_header <span>Cache</span><span>-Control</span> no<span>-cache</span>;

    }
<span>//配置缓存2分钟</span>
location ~<span>*</span> ^<span>.</span><span>+\</span><span>.</span>(js<span>|</span>css)$ {
        expires <span>120</span>s;
    }</code>
').addClass('pre-numbering').hide();를 추가해야 합니다. $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); });

위 내용이 소개되었습니다. 콘텐츠를 포함하여 CDN이 동적 파일을 캐시하지 않도록 하세요. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.