Как да инсталирате Roadiz CMS на Debian 9

Въведение

Roadiz е модерна CMS, предназначена да обработва много видове услуги. Базиран на компонентите на Symfony и Doctrine ORM, той ви позволява да създавате вашата схема на данни от нулата и да организирате съдържанието си по желание. В това ръководство ще инсталираме Roadiz на нов екземпляр на Debian 9 Vultr.

Изисквания

  • Nginx или Apache. В това ръководство ще използваме Nginx.
  • MySQL/MariaDB, PostgreSQL или SQLite база данни. В това ръководство ще използваме MariaDB.
  • Композитор
  • Git
  • PHP версия 7.1 или по-нова със следните разширения:
    • php-gd
    • php-intl
    • php-xml
    • php-curl
    • php-json
    • php-mbstring
    • php-opcache
    • php-apcu

Преди да започнеш

Проверете версията на Debian.

lsb_release -ds
# Debian GNU/Linux 9.8 (stretch)

Уверете се, че вашата система е актуална.

apt update && apt upgrade -y

Инсталирайте пакети git, unzip, curl и sudo.

apt install -y git unzip curl sudo

Създайте нов non-rootпотребителски акаунт с sudoдостъп и превключете към него.

adduser johndoe --gecos "John Doe"
usermod -aG sudo johndoe
su - johndoe

ЗАБЕЛЕЖКА: Заменете johndoeс вашето потребителско име.

Настройте часовата зона.

sudo dpkg-reconfigure tzdata

Инсталирайте PHP

Добавете хранилището на PHP 7.2 към вашата система.

sudo apt install -y apt-transport-https lsb-release ca-certificates
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list
sudo apt update

Инсталирайте PHP, както и необходимите PHP разширения.

sudo apt install -y php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-mysql php7.2-mbstring php7.2-gd php7.2-intl php7.2-xml php7.2-curl php7.2-zip php7.2-pgsql php7.2-sqlite3 php7.2-opcache php-apcu

Проверете версията.

php --version

# PHP 7.2.17-1+0~20190412071344.20+stretch~1.gbp23a36d (cli) (built: Apr 12 2019 07:13:45) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
#     with Zend OPcache v7.2.17-1+0~20190412071344.20+stretch~1.gbp23a36d, Copyright (c) 1999-2018, by Zend Technologies

Направете следните промени в /etc/php/7.2/fpm/php.iniи /etc/php/7.2/cli/php.ini.

memory_limit = 64M
post_max_size = 16M
upload_max_filesize = 16M
date.timezone

След като направите промени в тези два файла, рестартирайте PHP-FPM.

sudo systemctl restart php7.2-fpm.service

Инсталирайте MariaDB и създайте база данни

Инсталирайте MariaDB.

sudo apt-get install software-properties-common dirmngr
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://mirror.klaus-uwe.me/mariadb/repo/10.3/debian stretch main'
sudo apt-get update
sudo apt-get install mariadb-server

Проверете версията.

mysql --version && sudo mysqld --version

# mysql  Ver 15.1 Distrib 10.3.14-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
# mysqld  Ver 10.3.14-MariaDB-1:10.3.14+maria~stretch-log for debian-linux-gnu on x86_64 (mariadb.org binary distribution)

Изпълнете, за mysql_secure_installationда подобрите сигурността и задайте паролата за rootпотребителя.

sudo mysql_secure_installation

Would you like to setup VALIDATE PASSWORD plugin? N
Please set the password for root here.
New password: **********************
Re-enter new password: **********************
Remove anonymous users? Y
Disallow root login remotely? Y
Remove test database and access to it? Y
Reload privilege tables now? Y

Success.

All done!

Влезте в MariaDB като root потребител.

sudo mysql -u root -p
# Enter password

Създайте нова база данни и потребител, които ще използвате за вашата инсталация на Roadiz, и запомнете идентификационните данни.

CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
quit

Инсталирайте и конфигурирайте Nginx

Инсталирайте Nginx.

sudo apt install -y nginx

Проверете версията.

sudo nginx -v
# nginx version: nginx/1.10.3

Стартирайте sudo vim /etc/nginx/sites-available/roadiz.confи попълнете файла със следната конфигурация.

server {
  listen 80;
  listen [::]:80;

  server_name example.com; # Check this
  root /var/www/roadiz/web; # Check this

  index index.php;

  location / {
    try_files $uri $uri/ /index.php$is_args$args;
  }

  location ~ ^/(dev|install|preview|clear_cache)\.php(/|$) {
    fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
    fastcgi_split_path_info ^(.+\.php)(/.*)$;
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
    fastcgi_param DOCUMENT_ROOT $realpath_root;
  }

  location ~ ^/index\.php(/|$) {
    fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
    fastcgi_split_path_info ^(.+\.php)(/.*)$;
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
    fastcgi_param DOCUMENT_ROOT $realpath_root;
    internal;
   }
}

Активирайте новата roadiz.confконфигурация, като свържете файла към sites-enabledдиректорията.

sudo ln -s /etc/nginx/sites-available/roadiz.conf /etc/nginx/sites-enabled/

Тествайте конфигурацията.

sudo nginx -t

Презаредете Nginx.

sudo systemctl reload nginx.service

Инсталирайте Composer

Инсталирайте Composer глобално.

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '48e3236262b34d30969dca3c37281b3b4bbe3221bda826ac6a9a62d6444cdb0dcd0615698a5cbe587c3f0fe57a54d8f5') { 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.8.5 2019-04-09 17:46:47

Инсталирайте Roadiz

Създайте основна директория на документа.

sudo mkdir -p /var/www/roadiz

Променете собствеността върху /var/www/roadizдиректорията на johndoe.

sudo chown -R johndoe:johndoe /var/www/roadiz

Придвижете се до основната директория на документа.

cd /var/www/roadiz

Създайте нов проект Roadiz с Composer.

composer create-project roadiz/standard-edition .

ЗАБЕЛЕЖКА: Ако вашата система има по-малко от 1GB памет, може да срещнете грешки при изпълнение на composer create-projectкомандата. За да преодолеете това, конфигурирайте по-голямо количество суап памет или мащабирайте сървъра си вертикално.

Променете собствеността върху /var/www/roadizдиректорията на www-data.

sudo chown -R www-data:www-data /var/www/roadiz

От съображения за сигурност Roadiz използва IP филтриране за install.phpфайла. За да имате достъп до него, стартирайте sudo vim /var/www/roadiz/web/install.phpи добавете своя IP адрес към $allowedIpмасива.

$allowedIp = [
    '10.0.2.2',
    '192.168.33.1',
    '127.0.0.1', 'fe80::1', '::1', ':ffff:127.0.0.1', '::ffff:127.0.0.1',
    'YOUR_IP_ADDRESS_HERE'
]

Отворете http://example.com/install.phpвъв вашия уеб браузър и следвайте инструкциите, за да инсталирате Roadiz CMS.

Когато инсталацията на Roadiz приключи, можете да премахнете install.phpскрипта.

sudo rm /var/www/roadiz/web/install.php

За достъп до администратора на Roadiz, добавете /rz-adminкъм URL адреса на сайта си.

Оставете коментар

Възходът на машините: Реални приложения на AI

Възходът на машините: Реални приложения на AI

Изкуственият интелект не е в бъдещето, тук е точно в настоящето. В този блог Прочетете как приложенията за изкуствен интелект са повлияли на различни сектори.

DDOS атаки: кратък преглед

DDOS атаки: кратък преглед

Вие също сте жертва на DDOS атаки и сте объркани относно методите за превенция? Прочетете тази статия, за да разрешите вашите запитвания.

Чудили ли сте се как хакерите печелят пари?

Чудили ли сте се как хакерите печелят пари?

Може би сте чували, че хакерите печелят много пари, но чудили ли сте се някога как печелят такива пари? нека обсъдим.

Революционни изобретения на Google, които ще улеснят живота ви.

Революционни изобретения на Google, които ще улеснят живота ви.

Искате ли да видите революционни изобретения на Google и как тези изобретения промениха живота на всяко човешко същество днес? След това прочетете в блога, за да видите изобретенията на Google.

Friday Essential: Какво се случи с колите, задвижвани от изкуствен интелект?

Friday Essential: Какво се случи с колите, задвижвани от изкуствен интелект?

Концепцията за самоуправляващи се автомобили да тръгват по пътищата с помощта на изкуствен интелект е мечта, която имаме от известно време. Но въпреки няколкото обещания, те не се виждат никъде. Прочетете този блог, за да научите повече…

Технологична сингулярност: далечно бъдеще на човешката цивилизация?

Технологична сингулярност: далечно бъдеще на човешката цивилизация?

Тъй като науката се развива с бързи темпове, поемайки много от нашите усилия, рискът да се подложим на необяснима сингулярност също нараства. Прочетете какво може да означава сингулярността за нас.

Функционалности на референтните архитектурни слоеве за големи данни

Функционалности на референтните архитектурни слоеве за големи данни

Прочетете блога, за да разберете различни слоеве в архитектурата на големи данни и техните функционалности по най-простия начин.

Еволюция на съхранението на данни – инфографика

Еволюция на съхранението на данни – инфографика

Методите за съхранение на данните може да се развиват от раждането на данните. Този блог обхваща развитието на съхранението на данни на базата на инфографика.

6 невероятни предимства от наличието на интелигентни домашни устройства в живота ни

6 невероятни предимства от наличието на интелигентни домашни устройства в живота ни

В този дигитално задвижван свят устройствата за интелигентен дом се превърнаха в решаваща част от живота. Ето няколко невероятни предимства на интелигентните домашни устройства за това как те правят живота ни струващ и по-опростен.

Актуализацията на допълнението на macOS Catalina 10.15.4 причинява повече проблеми, отколкото решава

Актуализацията на допълнението на macOS Catalina 10.15.4 причинява повече проблеми, отколкото решава

Наскоро Apple пусна macOS Catalina 10.15.4 допълнителна актуализация за отстраняване на проблеми, но изглежда, че актуализацията причинява повече проблеми, водещи до блокиране на mac машини. Прочетете тази статия, за да научите повече