2014-08-30 4 views
0

Я пытаюсь установить Symfony2. То, что я делаю здесь описан http://symfony.com/doc/current/quick_tour/the_big_picture.html:Проблема с установкой symfony2

  1. локон -sS https://getcomposer.org/installer | PHP
  2. Судо мв composer.phar/USR/местные/бен/композитор

(это подводит итог установки композитор)

  1. композитор создать-проект Symfony/рамки-стандарт-издание. «~ 2,5»

После того как я введены все параметры (последний этап установки) я получаю эту ошибку в консоли (путь я установить Symfony2 на это -/бродяга/Webroot/павел - на мой VirtualBox):

PHP Fatal error: Interface 'Psr\Log\LoggerInterface' not found in /vagrant/webroot/pavel/vendor/monolog/monolog/src/Monolog/Logger.php on line 28 
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. 



create-project [-s|--stability="..."] [--prefer-source] [--prefer-dist] [--repository-url="..."] [--dev] [--no-dev] [--no-plugins] [--no-custom-installers] [--no-scripts] [--no-progress] [--keep-vcs] [--no-install] [package] [directory] [version] 

Таким образом, существует две ошибки: 1 о LoggerInterface и еще одна о кеше. Я не знаю, связаны ли они. После установки я иду к моему LOCALHOST/app_dev.php и я снова получить первую ошибку, но теперь в браузере:

Fatal error: Interface 'Psr\Log\LoggerInterface' not found in /vagrant/webroot/pavel/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Log/LoggerInterface.php on line 25 

мне действительно нужна помощь здесь, потому что я хочу сделать каждую часть Symfony2 «права» , не полагаясь на какие-либо пользовательские действия.

UPDATE (некоторые люди попросили меня опубликовать композитор)

Я установил с помощью команды я объяснил выше в этом посте, поэтому композитор самогенерируемого, то есть он не был сотворен мной и он должен работать. Но в любом случае:

{ 
    "require": { 
     "symfony/symfony": "2.5.*" 
    }, 
    "autoload": { 
     "files": ["model.php","controllers.php"] 
    } 
} 
+0

Пожалуйста, добавьте composer.json –

ответ

0

Одна общая проблема в том, что приложение/кэш и приложение/журналы журналов должны быть доступны для записи как веб-сервером, так и пользователем командной строки. В системе UNIX, если пользователь вашего веб-сервера отличается от пользователя вашей командной строки, вам нужно chmod папки, чтобы обеспечить правильную настройку разрешений.

Если все еще не работает с разрешениями, установленными на 755 или 777 (только для тестирования в среде разработки), попробуйте это, чтобы очистить кеш и журналы, когда вы видите это сообщение в своем browswer

Судо ет -rf приложение/кэш/* приложение/журналы/*

+0

Нет, это не проблема. Я очистил кеш. Кроме того, что это значит, что Symfony не найдет класс? – drakonli

+0

Если у вас нет доступа к папке журнала и кеша, вы не можете найти класс.Попробуйте это: $ Суда CHMOD + а "WWW позволяет удалять, писать, добавляемую, file_inherit, directory_inherit" приложение приложения/кэша/журналы $ Суда CHMOD + а «' whoami' позволяет удалять, писать, добавлять file_inherit, directory_inherit «app/cache app/logs –

+0

chmod + a не работает в unix. Я читал о том, что это определенная команда mac. – drakonli

-1

Это похоже на проблемы с разрешением на папку. Возможно, Symfony хочет очистить кеш после установки. (я не уверен, но это первое, что я бы проверить.

Также вы можете проверить, если композитор имеет последнюю версию.

+0

Если бы вы читали шаги, которые я сделал вы увидите, что я установил композитор с завитком -sS https: //getcomposer.org/installer | php, и он не может быть старым. – drakonli

Смежные вопросы