2013-04-05 2 views
1

Symfony2에서 작업합니다. 캐시 된 파일을 서버 (동일한 컴퓨터가 아닌)에 넣기 전에 캐시 된 파일을 준비하려고합니다. 상대 경로로 변경하는 방법이Symfony2 - 캐시 파일의 상대 경로

file: ./dev/classes.php.meta , 
file: ./dev/templates.php, 
file: ./dev/assetic/routing.yml 

'WebProfilerBundle:Profiler:toolbar_item.html.twig' => '/var/www/symfony/vendor/symfony/symfony/src/Symfony/Bundle/WebProfilerBundle/Resources/views/Profiler/toolbar_item.html.twig', 

있습니까 : 그들 중 일부는 예를 들어, 리소스에 대한 절대 경로를 구성하기 때문에

문제, 콘텐츠 파일에?

답변

0

가장 좋은 방법은 캐시 명령의 warmup 프로세스를 사용하는 것입니다.

php app/console cache:warmup --env=prod 
: 당신이 warmup 명령을 실행해야 다음, 당신은 cache 폴더의 내용을 삭제 수동으로 no-warmup 옵션을 사용하는 경우 또는

php app/console cache:clear --env=prod --no-debug 

:
는 단순히 no-warmup 옵션을 거치지 않고 캐시를 지우려면 명령을 실행 TemplatePathsCacheWarmer 실행,를 사용하도록 구성되어

http://symfony.com/doc/master/cookbook/deployment-tools.html#c-clear-your-symfony-cache

+1

캐시 : clear는 자동으로 웜업을 수행합니다 (--no-warmup 옵션을 지정하지 않은 경우). –

+1

@JakubZalas 감사합니다. (수동으로 캐시 폴더를 삭제합니다 .- 습관이 좋지 않을 것입니다. - 그래서'warmup' 명령을 실행해야합니다.) 나는 나의 대답을 편집했다. – cheesemacfly

+1

캐시 파일을 만드는 방법을 알고 있습니다. 문제는 "/ var/www/symfony"와 같은 절대 링크로 구성되는 내용입니다. –

0

.

내가 여기에 상대 경로를 사용하려고 시도와 제한적인 성공 했어
SYMFONY__kernel__cache_dir=/srv/myapp/app/cache php app/console cache:warmup 

(가 "../"에 통과 할 수 있지만 : 당신은 설치된 응용 프로그램의 경로를 알고 있다면, 당신은 with an environment variable to replace the parametercache:warmup을 실행하여이를 대체 할 수 있습니다 나는 템플릿이 무엇인지에 대해 100 % 확실하지 않다.) 이로 인해 앱 디렉토리 경로가 가변적 인 경우 (예 : 타임 스탬프가 적용된 출시 폴더) 까다로울 수 있습니다.