I'll use Vagrant (you'll need version 1.5 at least) and my dev box to create the desired environment.
The box main components are: Ubuntu14.04, Nginx1.6, Php5.5Fpm, Xdebug, Composer, MySql5.5, NodeJs0.10.30, Redis and it has PhpMyAdmin, Webgrind and RedisCommander.
So the steps are:
- Create the Vagrantfile
# -*- mode: ruby -*- # vi: set ft=ruby : VAGRANTFILE_API_VERSION = "2" Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| config.vm.box = "adammbalogh/lemp" config.vm.network "private_network", ip: "192.168.33.10" config.vm.synced_folder "app/", "/var/www/app/" config.vm.provider "virtualbox" do |vb| vb.customize ["modifyvm", :id, "--memory", "1512"] vb.customize ["modifyvm", :id, "--cpuexecutioncap", "85"] end end
- mkdir app
- vagrant up
- vagrant ssh
- cd /var/www/app
- composer create-project symfony/framework-standard-edition . '~2.5'
- nano app/AppKernel.php (and add these two methods)
public function getCacheDir() { return '/tmp/symfony/cache/' . $this->environment; } public function getLogDir() { return '/tmp/symfony/log/' . $this->environment; }
- nano web/app_dev.php (and delete these lines)
if (isset($_SERVER['HTTP_CLIENT_IP']) || isset($_SERVER['HTTP_X_FORWARDED_FOR']) || !(in_array(@$_SERVER['REMOTE_ADDR'], array('127.0.0.1', 'fe80::1',$ ) { header('HTTP/1.0 403 Forbidden'); exit('You are not allowed to access this file. Check '.basename(__FIL$ }
- app/console cache:clear --env=dev (to test it)