OPcache는 다른 사용자에 대해 동일한 파일을 한 번만 캐시합니다.

OPcache는 다른 사용자에 대해 동일한 파일을 한 번만 캐시합니다.

OPcache가 해시를 사용하도록 하거나 각 도메인의 특정 디렉터리를 대상으로 지정하여 use_pwd를 비활성화하여 동일한 패키지를 계속해서 캐시하지 않도록 하는 방법이 있습니까?

기본적으로 OPcache는 충돌을 방지하기 위해 작업 디렉터리를 스크립트 키에 추가합니다. 이는 다음을 사용하여 전환할 수 있습니다.opcache.use_cwd설정하지만 PHP 구성 파일이 충돌하므로 여러 웹 사이트가 있는 서버에서는 실제로 유용하지 않습니다.

배경 저는 Symfony, Magento 2 등 여러 대를 보유하고 있습니다. 동일한 서버에서 실행되는 애플리케이션의 경우 공급업체 디렉토리는 OPcache에서 많은 중복 파일을 생성하는 각 애플리케이션에 대한 모든 PHP 코드의 95%입니다.

답변1

예, opcache.config에서 다음 옵션을 활성화하십시오:

    ; When this directive is enabled, the OPcache appends the current working
    ; directory to the script key, thus eliminating possible collisions between
    ; files with the same name (basename). Disabling the directive improves
    ; performance, but may break existing applications.
    opcache.use_cwd=1

관련 정보