En este tutorial, le mostraremos cómo instalar Sylius en Debian 8 con MariaDB, PHP-FPM y Nginx. Sylius es una aplicación de comercio electrónico moderna construida sobre Symfony 2. Este tutorial debería funcionar también en otros sistemas basados en Linux, pero fue probado y escrito para Debian 8. Inicie sesión en su VPS a través de SSH
ssh furious@vps
Actualice el sistema e instale los paquetes necesarios.
[furious]$ sudo apt-get update && sudo apt-get -y upgrade [furious]$ sudo apt-get install curl
Instalar MariaDB 10.0
Para instalar la última versión de MariaDB 10, ejecute los siguientes comandos:
[furious]$ sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xcbcb082a1bb943db [furious]$ sudo add-apt-repository 'deb https://mirror.jmu.edu/pub/mariadb/repo/10.0/debian jessie main' [furious]$ sudo apt-get update [furious]$ sudo apt-get install -y mariadb-server
Cuando se complete la instalación, ejecute el siguiente comando para garantizar la instalación:
[furious]$ mysql_secure_installation
A continuación, necesitamos crear una base de datos para nuestra instalación de Sylius.
[furious]$ mysql -uroot -p MariaDB [(none)]> CREATE DATABASE syliusdb; MariaDB [(none)]> GRANT ALL PRIVILEGES ON syliusdb.* TO 'syliusdbuser'@'localhost' IDENTIFIED BY 'syliusdbuserpasswd'; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> q
Instalación de Nginx
La última versión de Nginx, la versión 1.8, no está disponible a través del repositorio predeterminado de Debian, por lo que agregaremos el repositorio Dotdeb. Abra el archivo /etc/apt/sources.list y agregue las siguientes líneas:
[furious]$ sudo vim /etc/apt/sources.list
deb https://packages.dotdeb.org jessie all deb-src https://packages.dotdeb.org jessie all
Obtenga e instale la clave GnuPG:
[furious]$ curl -sS https://www.dotdeb.org/dotdeb.gpg | sudo apt-key add -
Actualización del sistema e instalación de Nginx:
[furious]$ sudo apt-get update [furious]$ sudo apt-get -y install nginx
Instale PHP y los módulos PHP necesarios
Para instalar la última versión estable de PHP 5.6 y todos los módulos relacionados, ejecute el siguiente comando:
[furious]$ sudo apt-get -y install php5-fpm php5-cli php5-gd php5-mysqlnd php5-curl php5-intl
Instalar compositor
Composer es un administrador de dependencias para PHP con el que puedes instalar paquetes. Composer incorporará todas las bibliotecas que necesita para su proyecto.
[furious]$ curl -sS https://getcomposer.org/installer | php [furious]$ sudo mv composer.phar /usr/local/bin/composer
Instalar Silio
[furious]$ cd ~/ [furious]$ composer create-project sylius/sylius:v0.14.0
[furious]$ cd sylius [furious]$ php app/console sylius:install --env prod
El guión le hará algunas preguntas:
Creating the "app/config/parameters.yml" file Some parameters are missing. Please provide them. sylius.database.driver (pdo_mysql): sylius.database.host (127.0.0.1): sylius.database.port (null): sylius.database.name (sylius): syliusdb sylius.database.path (null): sylius.database.user (root): syliusdbuser sylius.database.password (null): syliusdbuserpasswd
[furious]$ cd sylius [furious]$ php app/console sylius:install --env prod
El script anterior verificará si todo está configurado, iniciará Sylius correctamente y le hará algunas preguntas adicionales.
Configuración PHP-FPM
Cree un nuevo grupo PHP-FPM para su usuario:
[furious]$ cat << EOF | sudo tee /etc/php5/fpm/pool.d/$(whoami).conf [$(whoami)] user = $(whoami) group = $(whoami) listen = /var/run/php5-fpm-$(whoami).sock listen.owner = $(whoami) listen.group = $(whoami) listen.mode = 0666 pm = ondemand pm.max_children = 5 pm.process_idle_timeout = 10s; pm.max_requests = 200 chdir = / EOF
Recargar PHP-FPM:
[furious]$ sudo service php5-fpm restart
configuración nginx
Cree un nuevo bloque de servidor Nginx con el siguiente contenido:
[furious]$ cat << EOF | sudo tee /etc/nginx/sites-available/mySylius.ru server { server_name mySylius.ru; listen 80; root $HOME/sylius/web; access_log /var/log/nginx/syliusru-access.log; error_log /var/log/nginx/syliusru-error.log; location / { try_files $uri /app.php$is_args$args; } location ~ ^/app.php(/|$) { fastcgi_pass unix:/var/run/php5-fpm-$(whoami).sock; fastcgi_split_path_info ^(.+.php)(/.*)$; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_intercept_errors off; fastcgi_buffer_size 16k; fastcgi_buffers 4 16k; } location ~ /.ht { deny all; } } EOF
Active el bloque del servidor creando un enlace simbólico:
[furious]$ sudo ln -s /etc/nginx/sites-available/mySylius.com /etc/nginx/sites-enabled/mySylius.ru
Comprobando la configuración de Nginx y reiniciando Nginx:
[furious]$ sudo nginx -t [furious]$ sudo service nginx restart
Eso es todo. Ha instalado Sylius exitosamente en Debian 8. Para obtener más información sobre cómo administrar su instalación de Sylius, visiteSilio…