На этом уроке мы расскажем вам, как установить Sylius на Debian 8 с MariaDB, PHP-FPM и Nginx. Sylius представляет собой современное приложение электронной коммерции построенной на основе Symfony 2. Это руководство должно работать на других системах на основе OS Linux, так же хорошо, но была испытана и написана для Debian 8.
ssh furious@vps
[furious]$ sudo apt-get update && sudo apt-get -y upgrade [furious]$ sudo apt-get install curl
Чтобы установить последнюю версию MariaDB 10, выполните следующие команды:
[furious]$ sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xcbcb082a1bb943db [furious]$ sudo add-apt-repository 'deb http://mirror.jmu.edu/pub/mariadb/repo/10.0/debian jessie main' [furious]$ sudo apt-get update [furious]$ sudo apt-get install -y mariadb-server
Когда установка завершена, выполните следующую команду, чтобы обеспечить установку:
[furious]$ mysql_secure_installation
Далее, нам необходимо создать базу данных для нашей установки 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
Последняя версия Nginx, версия 1.8 не доступна через репозиторий Debian по умолчанию, поэтому мы добавим репозиторий Dotdeb. Откройте файл /etc/apt/sources.list и добавьте следующие строки:
[furious]$ sudo vim /etc/apt/sources.list
deb http://packages.dotdeb.org jessie all deb-src http://packages.dotdeb.org jessie all
Получите и установите ключ GnuPG:
[furious]$ curl -sS http://www.dotdeb.org/dotdeb.gpg | sudo apt-key add -
Обновление системы и установка Nginx:
[furious]$ sudo apt-get update [furious]$ sudo apt-get -y install nginx
Чтобы установить последнюю стабильную версию PHP версии 5.6 и всех связанные модули, выполните следующую команду:
[furious]$ sudo apt-get -y install php5-fpm php5-cli php5-gd php5-mysqlnd php5-curl php5-intl
Composer является менеджером зависимостей для PHP с помощью которого можно установить пакеты. Composer будет тянуть все необходимые библиотеки, необходимые для вашего проекта.
[furious]$ curl -sS https://getcomposer.org/installer | php [furious]$ sudo mv composer.phar /usr/local/bin/composer
[furious]$ cd ~/ [furious]$ composer create-project sylius/sylius:v0.14.0
[furious]$ cd sylius [furious]$ php app/console sylius:install --env prod
Сценарий будет задать вам несколько вопросов:
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
Выше скрипт будет проверять, если все настроено, запустит Sylius правильно и задаст вам несколько дополнительных вопросов.
Создайте новый PHP-FPM пул для вашего пользователя:
[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
Перезагрузка PHP-FPM:
[furious]$ sudo service php5-fpm restart
Создание нового блока сервера Nginx со следующим содержанием:
[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
Активировать блок сервера, создав символическую ссылку:
[furious]$ sudo ln -s /etc/nginx/sites-available/mySylius.com /etc/nginx/sites-enabled/mySylius.ru
Проверка конфигурации Nginx и перезапуск Nginx:
[furious]$ sudo nginx -t [furious]$ sudo service nginx restart
Вот и все. Вы успешно установили Sylius на Debian 8. Для получения дополнительных сведений о том, как управлять установкой Sylius, пожалуйста, обратитесь на сайт Sylius.