PHP 5.5.28을 실행하는 Debian 웹 서버에 캐시되는 웹 사이트 파일

PHP 5.5.28을 실행하는 Debian 웹 서버에 캐시되는 웹 사이트 파일

내 웹사이트에 작은 변경 사항을 적용하고 업로드하면 해당 변경 사항이 실시간으로 반영되는 데 일반적으로 몇 분 정도 걸립니다. Google Compute Engine을 통해 새로운 데비안 시스템을 설치한 후에야 이런 일이 발생하기 시작했습니다.

캐싱하는 코드가 있다는 것을 배제했습니다. 하지만 PHP 5.5.28이나 Debian이 파일을 캐싱할 수 있습니까? 또한 브라우저가 아닌지 확인하고 개발자 도구에서 파일을 캐시하지 않도록 크롬 옵션을 사용했습니다.

답변1

귀하는 PHP 5.5.28을 사용하고 있으며 내 경험에 따르면 PHP 5.3 또는 5.4에서 PHP 5.5로 전환하는 사람은 누구나 새로운 내장 기능에 대해 알아야 합니다.OPcache(작업 캐시)기본적으로 활성화되어 있습니다.

혹시 사용해보신 분이라면APC(대체 PHP 캐시), 새로운 내장 OPcache는 거의 동일하게 작동하고 복잡한 코드의 생산 목적에 적합하지만 기본적으로 활성화되어 있으면 파일 업로드에 익숙하고 변경 사항이 즉시 표시되는 경우 문제가 될 수 있습니다.

이 사이트는 좋은 일을 하고 있어요OPcache가 무엇인지, 어떻게 조정하는지 설명하겠습니다. 하지만 아직 OPcache가 필요하지 않다면 다음과 같이 PHP ini 파일을 열면 됩니다. 나는 사용하는 것을 선호한다nano하지만 원하는 텍스트 편집기를 자유롭게 사용해 보세요.

sudo nano /etc/php5/apache2/php.ini

다음과 같은 줄을 찾으세요.

opcache.enable=1

해당 줄을 다음과 같이 변경하여 비활성화하면 됩니다.

;opcache.enable=0

Apache를 다시 시작하면 이제 PHP 5.5는 OPcache를 사용하지 않습니다. 그리고 그러한 캐시를 정직하게 활성화하려면 시스템 관리자가 필요하며 코드 작동 방식과 서버가 반응하는 방식에 대한 지식이 있어야 합니다.

PHP 기반 사이트가 충분히 가볍다면 OPcache는 너무 과할 수도 있고 실제로 필요하지도 않으며 방해가 될 수도 있습니다.

하지만 OPcache가 필요하지만 정기적으로 PHP 파일을 업데이트해야 하는 경우OPcache 구성 값을 조정하면 도움이 될 것입니다.. 기본 설정은 다음과 같습니다.

opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown=1
opcache.enable_cli=1

해당 구성에서 예상 업데이트가 중단될 수 있는 주요 사항은 다음과 같습니다.opcache.revalidate_freq:

업데이트를 위해 스크립트 타임스탬프를 확인하는 빈도(초)입니다. 0이면 OPcache가 모든 요청에 ​​대해 업데이트를 확인하게 됩니다.

기본값인 60초는 괜찮지만 opcache.revalidate_freq5초 정도로 낮추는 것이 OPcache의 이점을 활성화하는 더 좋은 방법일 수 있지만 여전히 합리적인 업데이트 확인 창을 제공하므로 문제가 발생하지 않습니다. 간단한 파일 업데이트로.

관련 정보