Силиус је модерна платформа за е-трговину за ПХП, заснована на Симфони Фрамеворк-у. Силиус изворни код се налази на ГитХуб-у .
Овај водич ће вас провести кроз процес инсталације Силиус-а на новој инстанци ФрееБСД 12 Вултр користећи ПХП, МариаДБ као базу података и Нгинк као веб сервер.
Захтеви
Да бисте могли да инсталирате Силиус, требаће вам:
- Инстанца сервера Вултр са најмање 2048 МБ меморије.
- Нгинк или Апацхе. У овом водичу користимо Нгинк.
- ПХП верзија 7.2 или новија са неким специфичним ПХП екстензијама:
gd, exif, fileinfo,intl
- Подешавања ПХП конфигурације:
memory_limitједнака или већа од 1024M,date.timezone
- МиСКЛ верзија 5.7 или 8.0 или МариаДБ еквивалент
- Композитор
- Ноде.јс
- Предиво
Пре него што почнете
Проверите верзију ФрееБСД-а.
uname -ro # FreeBSD 12.0-RELEASE
Уверите се да је ваш ФрееБСД систем ажуриран.
freebsd-update fetch install pkg update && pkg upgrade -y
Инсталирајте потребне пакете.
pkg install -y sudo vim unzip curl wget bash socat git
Креирајте нови кориснички налог са жељеним корисничким именом. Користићемо johndoe.
adduser # Username: johndoe # Full name: John Doe # Uid (Leave empty for default): <Enter> # Login group [johndoe]: <Enter> # Login group is johndoe. Invite johndoe into other groups? []: wheel # Login class [default]: <Enter> # Shell (sh csh tcsh nologin) [sh]: bash # Home directory [/home/johndoe]: <Enter> # Home directory permissions (Leave empty for default): <Enter> # Use password-based authentication? [yes]: <Enter> # Use an empty password? (yes/no) [no]: <Enter> # Use a random password? (yes/no) [no]: <Enter> # Enter password: your_secure_password # Enter password again: your_secure_password # Lock out the account after creation? [no]: <Enter> # OK? (yes/no): yes # Add another user? (yes/no): no # Goodbye!
Покрените visudoкоманду и скините коментар са %wheel ALL=(ALL) ALLлиније да бисте омогућили члановима wheelгрупе да изврше било коју команду.
visudo # Uncomment by removing hash (#) sign # %wheel ALL=(ALL) ALL
Сада се пребаците на свог новокреираног корисника помоћу su.
su - johndoe
НАПОМЕНА: Замените johndoeсвојим корисничким именом.
Подесите временску зону.
sudo tzsetup
Инсталирајте ПХП
Инсталирајте ПХП и потребна ПХП екстензије.
sudo pkg install -y php73 php73-mbstring php73-tokenizer php73-pdo php73-pdo_mysql php73-openssl php73-hash php73-json php73-phar php73-filter php73-zlib php73-dom php73-xml php73-xmlwriter php73-xmlreader php73-curl php73-session php73-ctype php73-iconv php73-gd php73-simplexml php73-zip php73-filter php73-tokenizer php73-calendar php73-fileinfo php73-intl php73-phar php73-soap php73-xmlrpc php73-opcache php73-mysqli php73-bcmath php73-gmp php73-exif
Проверите верзију.
php --version # PHP 7.3.8 (cli) (built: Aug 8 2019 01:28:36) ( NTS )
Софт-линк php.ini-productionдо php.ini.
sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini
Омогућите и покрените ПХП-ФПМ.
sudo sysrc php_fpm_enable=yes sudo service php-fpm start
Покрените sudo vim /usr/local/etc/php.iniи подесите memory_limitна 1024Mили више, и подесите date.timezone.
memory_limit = 1024M date.timezone = Region/City
Поново покрените ПХП-ФПМ.
sudo service php-fpm restart
Инсталирајте МариаДБ и креирајте базу података
Инсталирајте МариаДБ.
sudo pkg install -y mariadb102-client mariadb102-server
Проверите верзију.
mysql --version # mysql Ver 15.1 Distrib 10.2.25-MariaDB, for FreeBSD12.0 (amd64) using readline 5.1
Покрените и омогућите МариаДБ.
sudo sysrc mysql_enable="yes" sudo service mysql-server start
Покрените mysql_secure installationскрипту да бисте побољшали безбедност и поставили лозинку за rootкорисника.
sudo mysql_secure_installation
Повежите се са љуском као роот корисник.
sudo mysql -u root -p # Enter password
Направите празну базу података и корисника за Силиус и запамтите акредитиве.
CREATE DATABASE dbname; GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password'; FLUSH PRIVILEGES; exit
НАПОМЕНА: Замените dbnameи usernameодговарајућим именима за ваше подешавање. Замените passwordјаком лозинком.
Инсталирајте Нгинк
Инсталирајте Нгинк.
sudo pkg install -y nginx
Проверите верзију.
nginx -v # nginx version: nginx/1.16.1
Омогућите и покрените Нгинк.
sudo sysrc nginx_enable=yes sudo service nginx start
Конфигуришите Нгинк за Силиус. Покрените sudo vim /usr/local/etc/nginx/sylius.confи попуните датотеку следећом конфигурацијом.
server { listen 80; server_name example.com; root /usr/local/www/sylius/public; location / { try_files $uri /index.php$is_args$args; } location ~ ^/index\.php(/|$) { fastcgi_pass 127.0.0.1:9000; fastcgi_split_path_info ^(.+\.php)(/.*)$; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; fastcgi_param DOCUMENT_ROOT $realpath_root; internal; } location ~ \.php$ { return 404; } client_max_body_size 6m; }
Сачувајте датотеку и изађите са :+ W+ Q.
Сада морамо да укључимо sylius.confу главну nginx.confдатотеку.
Покрените sudo vim /usr/local/etc/nginx/nginx.confи додајте следећу линију у http {}блок.
include sylius.conf;
Тестирајте конфигурацију.
sudo nginx -t
Поново учитај Нгинк.
sudo service nginx restart
Инсталирајте Цомпосер
Инсталирајте Цомпосер глобално.
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" php -r "if (hash_file('sha384', 'composer-setup.php') === 'a5c698ffe4b8e849a443b120cd5ba38043260d5c4023dbf93e1558871f1f07f58274fc6f4c93bcfd858c6bd0775cd8d1') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" php composer-setup.php php -r "unlink('composer-setup.php');" sudo mv composer.phar /usr/local/bin/composer
Проверите верзију.
composer --version # Composer version 1.9.0 2019-08-02 20:55:32
Инсталирајте Ноде.јс
Инсталирајте Ноде.јс.
sudo pkg install -y node
Проверите верзију.
node --version # v12.4.0
Инсталирајте Иарн
Инсталирајте менаџер пакета Иарн.
sudo pkg install -y yarn
Проверите верзију.
yarn --version # 1.16.0
Инсталирајте Силиус
Направите основни директоријум документа.
sudo mkdir -p /usr/local/www/sylius
Промените власништво над /usr/local/www/syliusдиректоријумом у johndoe.
sudo chown -R johndoe:johndoe /usr/local/www/sylius
Идите до коренске фасцикле документа.
cd /usr/local/www/sylius
Покрените нови Силиус пројекат покретањем ове команде:
composer create-project sylius/sylius-standard .
Покрените vim .env.localда бисте унели детаље базе података и покренули Силиус у окружењу по избору.
APP_ENV=prod DATABASE_URL=mysql://username:[email protected]/dbname
НАПОМЕНА: Замените username, passwordи dbnameса детаљима ваше базе података.
Након што је све постављено, покрените следећу команду да бисте инсталирали Силиус:
php bin/console sylius:install -e prod
Да бисте видели потпуно функционалан фронт-енд, мораћете да инсталирате његова средства. Силиус користи Гулп за изградњу фронт-енд средстава користећи Иарн као ЈаваСцрипт менаџер пакета. Након што је Иарн инсталиран, идите у директоријум вашег пројекта да бисте инсталирали зависности.
yarn install
Затим направите фронт-енд средства тако што ћете покренути:
yarn build
Промените власништво над /usr/local/www/syliusдиректоријумом у www.
sudo chown -R www:www /usr/local/www/sylius
Креирајте /var/lib/php/session/директоријум и промените власништво у www.
sudo mkdir -p /var/lib/php/session && sudo chown -R www:www /var/lib/php/session
Поново покрените ПХП-ФПМ услугу.
sudo service php-fpm restart
Инсталирана је Силиус платформа за е-трговину. Административни панел подразумевано усмерава на /admin.