Инсталиране на Fork CMS на Debian 9

Fork е CMS с отворен код, написан на PHP. Изходният код на Fork се хоства на GitHub . Това ръководство ще ви покаже как да инсталирате Fork CMS на нов екземпляр на Debian 9 Vultr.

Изисквания

  • PHP 7.1 или по-нова версия.
  • Следните PHP разширения:
    • cURL
    • libxml
    • DOM
    • SimpleXML
    • SPL
    • PDO (с MySQL драйвер)
    • mb_string
    • iconv
    • GD2 графична библиотека
    • json
    • PCRE
    • intl
  • MySQL 5.0 или по-нова версия.
  • Nginx

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

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

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

apt update && apt upgrade -y

Инсталирайте необходимите пакети.

apt install -y apt-transport-https sudo curl wget dirmngr

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

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

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

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

timedatectl list-timezones
sudo timedatectl set-timezone Region/City

Стъпка 1 - Инсталирайте PHP и необходимите PHP разширения, MySQL и Nginx

Debian не предоставя най-новата версия на PHP в своите софтуерни хранилища по подразбиране. Ще трябва да добавим хранилище на трета страна, поддържано от общността.

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 7.2 и необходимите PHP разширения.

sudo apt install -y php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-curl php7.2-mbstring php7.2-gd php7.2-intl php7.2-mysql php7.2-xml php7.2-json

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

php --version

PHP 7.2.5-1+0~20180505045740.21+stretch~1.gbpca2fa6 (cli) (built: May  5 2018 04:57:44) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.2.5-1+0~20180505045740.21+stretch~1.gbpca2fa6, Copyright (c) 1999-2018, by Zend Technologies

Стъпка 2 - Инсталирайте MySQL/MariaDB и настройте базата данни

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

sudo apt install -y mysql-server

Проверете версията на MySQL/MariaDB.

mysql --version
# mysql  Ver 15.1 Distrib 10.1.26-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

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

sudo mysql_secure_installation

Свържете се с MySQL shell като root потребител.

sudo mysql -u root -p
# Enter password

Създайте празна MySQL база данни и потребител за Fork CMS и запомнете идентификационните данни.

CREATE DATABASE dbname;
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON dbname.* TO username@localhost;
FLUSH PRIVILEGES;
EXIT;

Стъпка 3 - Инсталирайте и конфигурирайте Nginx

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

sudo apt install -y nginx

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

sudo nginx -v
# nginx version: nginx/1.10.3

Стартирайте sudo vim /etc/nginx/sites-available/fork.confи конфигурирайте Nginx за Fork.

server {
    listen 80;

    root /var/www/fork;
    index index.php index.html;

    server_name example.com;

    location / {
    # Checks whether the requested url exists as a file $uri or directory $uri/ in the root, else redirect to /index.php.
        try_files $uri $uri/ @redirects;
    }

    location @redirects {
        rewrite ^ /index.php;
    }

    location ~ \.php$ {
        try_files $uri =404;
        include fastcgi_params;
        fastcgi_pass unix:/var/run/php/php7.2-fpm.sock; # Make sure to doublecheck this!
        fastcgi_index index.php;
        fastcgi_read_timeout 60;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }

    # Don't pollute the logs with common requests
    location = /robots.txt  { access_log off; log_not_found off; }
    location = /favicon.ico { access_log off; log_not_found off; }

    # As Fork CMS has the app_root as doc_root, we need to restrict access to a few things for security purposes!
    location ~* ^/(composer\..*|vendor\/.*|Procfile$|\.git\/.*|src\/Console.*|.*\.gitignore|\.editorconfig|\.travis.yml|autoload\.php|bower\.json|phpunit\.xml\.dist|.*\.md|app\/logs\/.*|app\/config\/.*|src\/Frontend\/Cache\/CompiledTemplates.*|src\/Frontend\/Cache\/Locale\/.*\.php|src\/Frontend\/Cache\/Navigation\/.*\.php|src\/Frontend\/Cache\/Search\/.*|src\/Backend\/Cache\/CompiledTemplates\/.*|src\/Backend\/Cache\/Locale\/.*\.php)$ {
        deny all;
        access_log off;
        log_not_found off;
    }

    # Deny access to dot-files.
    location ~ /\. {
        deny all;
        access_log off;
        log_not_found off;
    }
}

Обобщение на промените, които ще направите, е както следва.

  • Променете стойността на rootдирективата, за да сочи към правилното местоположение на вашия уебсайт, като например /var/www/fork.
  • Променете стойността на server_nameдирективата, за да сочи към името на вашия домейн или IP адрес.
  • Уверете се, че сте fastcgi_passнастроили правилно.

Запазете файла и излезте.

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

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

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

sudo nginx -t

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

sudo systemctl reload nginx.service

Стъпка 4 - Изтеглете и инсталирайте Composer

Изтеглете зависимостите на Composer.

sudo apt install -y curl git unzip

Изтеглете и инсталирайте Composer, мениджъра на зависимости за PHP.

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '544e09ee996cdf60ece3804abc52599c22b1f40f4323403c44d44fdfdd586475ca9813a858088ffbc1f233e9b180f061') { 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.6.5 2018-05-04 11:44:59

Стъпка 5 - Изтеглете и инсталирайте Fork CMS чрез Composer

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

sudo mkdir -p /var/www/fork

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

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

Изтеглете най-новата стабилна версия на Fork CMS от командния ред.

cd /var/www/fork
composer create-project forkcms/forkcms .

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

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

Редактирайте app/config/parameters.yml.distфайла и задайте информацията за базата данни.

sudo vim /var/www/fork/app/config/parameters_install.yml

Използвайки предпочитания от вас уеб браузър, отворете сайта си и следвайте инсталатора на Fork CMS. След като следвате инсталатора, трябва да имате Fork и да работи. За достъп до административната област на Fork просто добавете /privateкъм 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 машини. Прочетете тази статия, за да научите повече