简体   繁体   中英

Symfony2 Composer Install

I am trying to install Symfony 2.1.3 (latest). I am running composer and installs everything okay. The only error that I get is:

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. 

It's being installed under www folder. I am running nginx and followed the composer approach. I read on internet that apache should be run manually not as a service, however I am using nginx instead. Does apache still have any bearing on it? I'm using debian squeeze.

Edit: As per AdrienBrault's suggestion the error was because the timezone was not set in the php.ini. Only with --verbose I could see the warning. Thanks guys.

Apache is not related - PHP is called via command line.

Most likely is the permission in the cache folder: did you check if the user that runs the composer update can actually write the cache folder?

Try to manually run rm -Rf app/cache/dev (for production environment replace dev with prod) and see if you get any permission error.

Also you will get this error if the default.timezone setting is not configured in php when running in CLI. To verify just run

php --info | grep timezone

and check that the setting date.timezone is correctly configured.

On the security side, setting 777 to the folder is not the optimal solution - if you have ACL enabled you could use that to correctly set up the permission for the cache and logs folder. Read more at the Symfony2 official installation page

I had this same issue for a while and after hours of face to brick wall pounding I realized... I have a .gitmodule in my project, and on initial checkout these submodules are NOT initialized and as such are not there for your composer to update, which results in the above error.

Make sure you run the following

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

of course replace src/Acme/Sadness/Bundle with YOUR project namespace.

Hope this helps someone not go through the same pain I just did.

If you have vendor folder already I would remove it and install symfony 2.1.3 again via "composer.phar install". Problem might be coming from outdated version of composer

I had the same problem and I resolve in this way.

execute this on the console and you should see something like this

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

the first line is probably your php.ini that appear when you do a phpinfo();

the problem is that when you execute composer update this no check the same php.ini

in my case the second line

all my sites work fine but always I had problems not now after edit the second file and put the same time zone that you set in the first one

run

$ sudo service apache2 reload

and now

$ composer update

I hope that this work for you like work for me

regards Emiliano

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM