2012-12-03 2 views
1

내 프로덕션 서버에 app_dev.php에서 다음과 같은 오류가 발생합니다 :Symfony2 Shell.php 오류

ErrorException : 공지 사항 : 정의되지 않은 변수 :/www가 출력/ACME/www가/공급 업체/심포니/심포니 /src/Symfony/Component/Finder/Shell/Shell.php 라인 59

  1. /www/acme/www/vendor/symfony/symfony/src/Symfony/Component/Finder/Shell/Shell.php 에서 line 59
  2. ErrorHandler-> handle ('8', '정의되지 않은 변수 : 출력', '/ www/acme/www /www/acme/www/vendor /에있는 /vendor/symfony/symfony/src/Symfony/Component/Finder/Shell/Shell.php ', '59 ', array ('command '=>'찾기 '/www/acme/www/vendor/symfony/symfony/src/Symfony의 쉘 -> testCommand ('find')에서 symfony/symfony/src/Symfony/Component/Finder/Shell/Shell.php 라인 59
  3. /www/acme/www/vendor/symfony/symfony/src/Symfony/Component/Finder/Adapter/GnuFindAdapter.php에 /Component/Finder/Adapter/AbstractFindAdapter.php AbstractFindAdapter-에서 선 123
  4. >가 isSupported()/www/acme/www/vendor/symfony/symfony/src/Symfony/Component/Finder/Finder에서 GnuFindAdapter-> isSupported()에있는 행 30
  5. .PHP 라인 700 찾기 -> searchInDirectory ('/ WWW/ACME/WWW/벤더/심포니/심포니/SRC/심포니/컴포넌트/검사기/자원/번역') /WWW에서 /ACME/WWW에서
  6. /www/acme/www/vendor/symfony/symfony/src/Symfony/Bundle의 Finder-> getIterator()에서 /vendor/symfony/symfony/src/Symfony/Component/Finder/Finder.php line 628
  7. /FrameworkBundle/DependencyInjection/FrameworkExtension.php FrameworkExtension-에서 선 555
  8. > registerTranslatorConfiguration (배열 ("대체" => 'PL', '활성화'=> TRUE), 객체 (ContainerBuilder))/WWW IN/ACME/www/vendor/symfony/symfony/src/Symfon FrameExtension-> load (array ('fallback'=> 'pl'), 'secret'=> 에있는 y/Bundle/FrameworkBundle/DependencyInjection/FrameworkExtension.php 줄 106
  9. 'form'=> true, 'eea6ad638afadb62cd7bc360e98f7d3b', 'router'=> 배열 ('리소스'=> '/www/acme/www/app/config/routing.yml', 'strict_requirements'=> ) 'csrf_protection'=> true, 'validation'=> 배열 ('enable_annotations'=> true), 'templating'=> 배열 ('engines' => 배열 ('나뭇 가지')), 'trust_proxy_headers'=> false ('router'=> 배열 ('resource'=> '/www/acme/www/app/config/routing_dev.yml'), 'default_locale'=> 'pl', 'session'=> null) , 'profiler'=> 배열 ('only_exceptions'=>))) 거짓 오브젝트 (ContainerBuilder))에 /www/acme/www/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/Compiler/MergeExtensionConfigurationPass.php 라인 42에서 MergeExtensionConfigurationPass-
  10. > 공정 ( 에서 객체 (ContainerBuilder)) /www/acme/www/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/DependencyInjection/MergeExtensionConfigurationPass.php 라인 39에서 MergeExtensionConfigurationPass-
  11. > 처리 (오브젝트 (ContainerBuilder)) /www/acme/www/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/컴파일러/컴파일러에 있습니다.PHP 라인 Compiler- 119
  12. > 컴파일 (오브젝트 (ContainerBuilder)) /www/acme/www/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/ContainerBuilder.php 라인 494에
  13. ContainerBuilder-> /www/acme/www/app/bootstrap.php.cache 줄에서 950
  14. (커널/buildContainer() /www/acme/www/app/bootstrap.php.cache 라인 859에서 컴파일)
  15. /www/acme/www/app/bootstrap.php.cache 라인는 커널> initializeContainer()에서
  16. (571)는 커널에서
  17. > 부팅() /www/acme/www/app/bootstrap.php에서 .cache line 614
  18. 그것은 뭔가 잘못 될 수 있도록 /www/acme/www/web/app_dev.php 라인는 커널에서
  19. > 핸들 (객체 (요청)) 29

모든 것이 내 로컬 호스트에서 잘 작동 서버 구성.

+0

symfony 2.0 또는 2.1을 실행하고 있습니까? 어떤 버전의 프로세스 구성 요소입니까? 어떤 PHP 버전? app/check.php 및 web/config.php가 오류를 지적합니까? – Sgoettschkes

+0

@Sgoettschkes 방금 내 질문에 대답했습니다. PHP exec() 함수가 꺼져 있습니다. –

답변

1

보안상의 이유로 호스팅 제공 업체가 PHP exec 기능을 사용 중지했습니다. 위의 오류가 발생했기 때문입니다. Symfony2에서 exec 기능을 우회 할 수 있는지 알고있는 사람이 있습니까? exec 기능이 해제 된 상태에서 symfony2를 서버에서 실행할 수 있다면 가능합니까?

1

php safe_mode를 해제 한 상태에서 호스팅과 동일한 문제가 발생했습니다. 사실 거기에 할 일이 있지만, 나는 그들이 그것을 고칠 때를 모른다.

// todo: find a better way (command could not be available) 
exec('command -v '.$command, $output, $code); 

Symfony \ Component \ Finder \ Shell \ Shell에서 볼 수 있습니다.