Силиус је модерна платформа за е-трговину за ПХП, заснована на Симфони Фрамеворк-у. Силиус изворни код се налази на ГитХуб-у .
Овај водич ће вас провести кроз процес инсталације Силиуса на новој инстанци ЦентОС 7 Вултр користећи ПХП, МариаДБ као базу података и Нгинк као веб сервер.
Захтеви
Да бисте могли да инсталирате Силиус, требаће вам:
- Инстанца сервера Вултр са најмање 2048 МБ меморије.
- Нгинк или Апацхе. У овом водичу користимо Нгинк.
- ПХП верзија 7.2 или новија са неким специфичним ПХП екстензијама:
gd, exif, fileinfo,intl
- Подешавања ПХП конфигурације:
memory_limitједнака или већа од 1024M,date.timezone
- МиСКЛ верзија 5.7 или 8.0 или МариаДБ еквивалент
- Композитор
- Ноде.јс
- Предиво
Пре него што почнете
Проверите верзију ЦентОС-а.
cat /etc/centos-release # CentOS Linux release 7.6.1810 (Core)
Креирајте нови non-rootкориснички налог са sudoприступом и пређите на њега.
useradd -c "John Doe" johndoe && passwd johndoe usermod -aG wheel johndoe su - johndoe
НАПОМЕНА: Замените johndoeсвојим корисничким именом.
Подесите временску зону.
timedatectl list-timezones sudo timedatectl set-timezone 'Region/City'
Уверите се да је ваш систем ажуриран.
sudo yum update
Инсталирајте потребне пакете.
sudo yum install -y socat git wget unzip vim
Онемогућите СЕЛинук и заштитни зид.
sudo setenforce 0 ; sudo systemctl stop firewalld ; sudo systemctl disable firewalld
Инсталирајте ПХП
Подесите Вебтатиц ИУМ репо.
sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
Инсталирајте ПХП и потребна ПХП екстензије.
sudo yum install -y php72w-cli php72w-fpm php72w-common php72w-mysqlnd php72w-gd php72w-intl php72w-zip php72w-curl php72w-xml php72w-mbstring php72w-json
Проверите верзију.
php --version # PHP 7.2.21 (cli) (built: Aug 4 2019 08:42:27) ( NTS )
Покрените и омогућите ПХП-ФПМ.
sudo systemctl start php-fpm.service sudo systemctl enable php-fpm.service
Покрените sudo vim /etc/php.iniи подесите memory_limitна 1024Mили више, и подесите date.timezone.
memory_limit = 1024M date.timezone = Region/City
Поново покрените ПХП-ФПМ.
sudo systemctl restart php-fpm.service
Инсталирајте МариаДБ и креирајте базу података
Инсталирајте МариаДБ сервер базе података.
sudo vi /etc/yum.repos.d/MariaDB.repo # Copy/paste this to the /etc/yum.repos.d/MariaDB.repo file [mariadb] name = MariaDB baseurl = https://yum.mariadb.org/10.2/centos7-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1 sudo yum install -y MariaDB-server MariaDB-client
Проверите верзију.
mysql --version # mysql Ver 15.1 Distrib 10.2.16-MariaDB, for Linux (x86_64) using readline 5.1
Покрените и омогућите МариаДБ.
sudo systemctl start mariadb.service sudo systemctl enable mariadb.service
Покрените 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 yum install -y nginx
Проверите верзију.
nginx -v # nginx version: nginx/1.12.2
Покрените и омогућите Нгинк.
sudo systemctl start nginx.service sudo systemctl enable nginx.service
Конфигуришите Нгинк за Силиус. Покрените sudo vim /etc/nginx/conf.d/sylius.confи попуните датотеку следећом конфигурацијом.
server { listen 80; server_name example.com; root /var/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.
Тестирајте конфигурацију.
sudo nginx -t
Поново учитај Нгинк.
sudo systemctl reload nginx.service
Инсталирајте Цомпосер
Инсталирајте Цомпосер глобално.
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 yum install -y gcc-c++ make sudo -s curl -sL https://rpm.nodesource.com/setup_10.x | bash - exit sudo yum install -y nodejs
Проверите верзију.
node --version # v10.16.3
Инсталирајте Иарн
Инсталирајте менаџер пакета Иарн.
curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo sudo yum install -y yarn
Проверите верзију.
yarn --version # 1.17.3
Инсталирајте Силиус
Направите основни директоријум документа.
sudo mkdir -p /var/www/sylius
Промените власништво над /var/www/syliusдиректоријумом у johndoe.
sudo chown -R johndoe:johndoe /var/www/sylius
Идите до коренске фасцикле документа.
cd /var/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
Промените власништво над /var/www/syliusдиректоријумом у nginx.
sudo chown -R nginx:nginx /var/www/sylius
Покрените sudo vim /etc/php-fpm.d/www.confи подесите корисника и групу на nginx. У почетку ће бити постављени на апацхе.
sudo vi /etc/php-fpm.d/www.conf # user = nginx # group = nginx
Креирајте /var/lib/php/session/директоријум и промените власништво у nginx.
sudo mkdir -p /var/lib/php/session && sudo chown -R nginx:nginx /var/lib/php/session
Поново покрените ПХП-ФПМ услугу.
sudo systemctl restart php-fpm.service
Инсталирана је Силиус платформа за е-трговину. Административни панел подразумевано усмерава на /admin.