Skip to content

Instantly share code, notes, and snippets.

@mjavadhpour
Created December 14, 2016 07:57
Show Gist options
  • Save mjavadhpour/162f5b8bb7f7cfb0763af722dc7e4d86 to your computer and use it in GitHub Desktop.
Save mjavadhpour/162f5b8bb7f7cfb0763af722dc7e4d86 to your computer and use it in GitHub Desktop.
Symfony install server
export SYMFONY_ENV=prod
composer install --no-dev --optimize-autoloader
@mjavadhpour
Copy link
Author

mjavadhpour commented Dec 31, 2016

Install symfony on production server

  1. create project directory

mkdir -p ./todo-symfony/
clone project to this directory

  1. find and set web server user:

HTTPDUSER=ps axo user,comm | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | head -1 | cut -d\ -f1

  1. set owning of project directory (By r)

chown "$HTTPDUSER":"$HTTPDUSER" ./todo-symfony

  1. find and set permissions for files and folders

find ./todo-symfony -type d -exec chmod 755 {} \;
find ./todo-symfony -type f -exec chmod 644 {} \;

  • if this doesn't work, try adding -n option
  1. set acl for cache and logs dir

setfacl -R -m u:"$HTTPDUSER":rwX -m u:whoami:rwX ./todo-symfony/app/cache ./todo-symfony/app/logs
setfacl -dR -m u:"$HTTPDUSER":rwX -m u:whoami:rwX ./todo-symfony/app/cache ./todo-symfony/app/logs

  1. set symfony env to prod

export SYMFONY_ENV=prod

  1. install symfony

composer install --no-dev --optimize-autoloader

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment