2012-11-12 6 views
5

Symfony 2.1.3 (최신)을 설치하려고합니다. 나는 작곡가를 운영 중이며 모든 것을 설치합니다. 내가 얻는 오류가 있습니다 : 그것은 WWW 폴더 아래에Symfony2 작곡가 설치

Script Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::clearCache 
handling the post-install-cmd event terminated with an exception 

[RuntimeException]               
An error occurred when executing the "'cache:clear --no-warmup'" command. 

을 설치하는 것. 나는 nginx를 실행하고 작곡가 접근 방식을 따랐다. 아파치가 수동으로 서비스로 실행해서는 안된다는 것을 인터넷에서 읽었지만 대신 nginx를 사용하고 있습니다. 아파치는 여전히 그것에 베어링이 있습니까? 나는 데비안 짜기를 사용하고 있습니다.

편집 : AdrienBrault의 제안에 따라 php.ini에서 시간대가 설정되지 않았기 때문에 오류가 발생했습니다. 오직 그 경고 만 볼 수있었습니다. 고마워.

+0

어떤 일이 당신이 "명확한 --verbose를 PHP 응용 프로그램/콘솔 캐시"를 할 경우에 대한 작업을 좋아하는 희망? – AdrienBrault

+0

[ErrorException] 경고 : date_default_timezone_get() : 시스템의 ' '시간대 설정에 의존하는 것이 안전하지 않습니다. date.default_timezone_set() 함수를 사용하려면 date.timezone 설정을 사용하거나 * 을 사용해야합니다. 당신이 그 중 하나를 사용하는 경우 thods 그리고 당신은 여전히이 경고가 나타납니다, 당신은 대부분 시간대 식별자의 철자가 틀렸을 가능성이 큽니다. 'EST/-5.0/DST 없음'에 대해 'America/New_York'을 선택했습니다. 대신 /var/www/Symfony/vendor/monolog/monolog/src/Monolog/Logger.php 줄 112 – Marin

+0

재미있는 점은 없습니다. 공급 업체가 만들어지는 설치 중에이 파일을 제어 할 수 있습니까? 감사합니다 – Marin

답변

7

아파치는 관련이 없습니다 - PHP는 명령 행을 통해 호출됩니다.

캐시 폴더의 권한은 대부분 다음과 같습니다. 작성기 업데이트를 실행하는 사용자가 실제로 캐시 폴더를 쓸 수 있는지 확인 했습니까?

rm -Rf app/cache/dev (프로덕션 환경에서는 dev를 prod로 바꾸십시오)을 수동으로 실행하고 권한 오류가 발생하는지 확인하십시오.

CLI에서 실행 중일 때 default.timezone 설정이 PHP에서 구성되지 않은 경우에도이 오류가 발생합니다. 단지

php --info | grep timezone

를 실행하고 설정 date.timezone가 올바르게 구성되어 있는지 확인합니다 확인합니다.

보안 측면에서 폴더에 대한 777 설정이 최적의 해결책이 아닙니다. ACL이 활성화 된 경우이를 사용하여 캐시 및 로그 폴더에 대한 권한을 올바르게 설정할 수 있습니다. Symfony2 official installation page

+0

오류 제거 오류가 없습니다. – Marin

+2

작곡가 설치'curl -s https://getcomposer.org/installer |를 실행할 수 있습니까? php'? date.timezone에 대한 오류를 반환하는지 확인하십시오. 예인 경우 오류의 원인이 될 가능성이 매우 높습니다. – Roberto

+0

어제 시도했는데 로베르토가 범인이었습니다! – Marin

0

이미 공급 업체 폴더가 있으면 제거하고 "composer.phar install"을 통해 symfony 2.1.3을 다시 설치하십시오. 구식 버전의 작곡가로부터 문제가 발생할 수 있습니다

+0

[update composer] (http://getcomposer.org/download/)가 표시 될 수 있습니다. – Gtx

+3

이것은 문제가 아닙니다. 당신이 얻는 에러는 Composer가 모든 것을 설치 한 후에 실행되는 스크립트 인'Sensio \ Bundle \ DistributionBundle \ Composer \ ScriptHandler :: clearCache'에서 발생합니다. 이것은'app/cache' 디렉토리에있는 에러입니다. 그리고 오래된 버전의 작곡가를 사용한다면'php composer.phar self-update'를 사용하여 최신 버전을 얻어야합니다. –

1

벽돌 벽을 두드리는듯한 얼굴을 보면서 한동안과 같은 시간 동안이 같은 문제가있었습니다 ... 프로젝트에서 gitmodule을 가지고 있고 처음 체크 아웃 할 때이 서브 모듈 초기화되지 않았기 때문에 작곡가가 업데이트 할 수 없으므로 위의 오류가 발생합니다.

확실히 당신은 물론 다음

git submodule update --init src/Acme/Sadness/Bundle 

프로젝트 네임 스페이스와 SRC/한국 전기/슬픔/번들을 대체 실행 확인합니다.

희망은 누군가가 내가 한 것과 똑같은 고통을 겪지 않기를 바랍니다.

0

나는 동일한 문제가있어서 이런 방식으로 해결됩니다.

콘솔 에서이 작업을 실행하면 첫 번째 줄은 아마 당신이) (A은 phpinfo 할 때 나타나는 php.ini 파일입니다이

$ locate php.ini 
/etc/php5/apache2/php.ini 
/etc/php5/cli/php.ini 
/etc/php5/fpm/php.ini 

같은 것을 볼 수;

문제는 당신이 작곡가 업데이 트를 수행 할 때이 동일한 PHP를 확인합니다.INI

내 경우에는

에게 두 번째 줄

내 모든 사이트가 잘 작동하지만 항상 내가 편집 번째 파일 후 지금하지 을 문제가 있었다 당신이 첫 번째

에서 설정 한 것과 같은 시간대를 넣어 실행

$ sudo service apache2 reload 

지금

$ composer update 

나는 당신을 위해이 일이 나

관련 에밀리