2

FOS Userbundle을 설치하여이 기능을 배우고 더 이상 필요하지 않다고 결정했습니다. 나는 그것을 제거하기 위해 다음을했다. 제거한 후 작곡가 업데이트를 실행했습니다. Symfony2 - 수동으로 FOS 사용자 번들을 제거했으나 이제는 프로덕션 모드에서 캐시를 지울 수 없습니다.

  • 엔티티 User.php가 config.yml에서
  • 제거 설정 파일 제거 composer.json 파일에서 제거 appKernel
  • 제거 벤더 폴더
  • 로부터 번들을 제거 , security.yml, routing.yml

이제 생산 모드에서 캐시를 지우려고 할 때 아래 오류가 발생합니다. dev 모드에서 캐시 지우기가 정상적으로 작동합니다.

FOS 사용자 번들을 제거하고 프로덕션 모드에서 캐시를 지울 수 없도록 내가 잘못하고있는 것을 보여줄 수 있습니까?

PHP Fatal error: Class 'FOS\UserBundle\EventListener\LastLoginListener' not found in /var/www/html/HealthFitness/vendor/symfony/symfony/src/Symfony/Component/EventDispatcher/ContainerAwareEventDispatcher.php on line 142 

PHP Stack trace: 

PHP 1. {main}() /var/www/html/HealthFitness/app/console:0 

PHP 2. Symfony\Component\Console\Application->run() /var/www/html/HealthFitness/app/console:27 

PHP 3. Symfony\Bundle\FrameworkBundle\Console\Application->doRun() /var/www/html/HealthFitness/vendor/symfony/symfony/src/Symfony/Component/Console/Application.php:121 

PHP 4. Symfony\Component\DependencyInjection\Container->get() /var/www/html/HealthFitness/vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Console/Application.php:86 

PHP 5. appProdProjectContainer->getEventDispatcherService() /var/www/html/HealthFitness/app/bootstrap.php.cache:2037 

PHP 6. Symfony\Component\EventDispatcher\ContainerAwareEventDispatcher->addSubscriberService() /var/www/html/HealthFitness/app/cache/prod/appProdProjectContainer.php:343 

답변

5

오류가 실제로 캐시 오류에서 온 것 같습니다.

php app/console cache:clear --env=prod을 실행하는 중에 오류가 있습니까?

app/cache/prod/*를 수동으로 삭제할 수 있습니다.

+0

app/cache/prod/*를 수동으로 삭제하는 가장 좋은 방법은 무엇입니까? 그리고 예, 캐시를 수행 한 후에 오류가 발생했습니다. clear --env = prod. –

+0

수동으로'rm -rf app/cache/prod/*';)을 의미합니다. acl에 영향을 미치지 않고 폴더에 apache 권한을 허용하지 않습니다. prod/ – Healkiss

+0

Gotcha ... 잘 처리되었습니다! 감사! –

0

수동으로 파일을 제거 할 수없는 경우이 방법도 사용할 수 있습니다.

cache:warmup --env=prod

을 다음

cache:clear --no-warmup --no-optional-warmers --env=prod

이 아닌 기존 클래스의 캐시를 다시 시도해서는 안 그런 식 및 :

는 또한 --no-warmup--no-optional-warmers 스위치를 사용할 수 있습니다 수동으로 캐시를 제거하는 것이 더 빠르지 만, 여전히 워밍업합니다.