Установка Fork CMS на Debian 9

Fork - это CMS с открытым исходным кодом, написанная на PHP. Исходный код Форка размещен на 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 от имени пользователя 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, просто добавьте /privateURL своего сайта.

Оставить комментарий

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

Функциональные возможности уровней эталонной архитектуры больших данных

Функциональные возможности уровней эталонной архитектуры больших данных

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

6 невероятных фактов о Nintendo Switch

6 невероятных фактов о Nintendo Switch

Многие из вас знают Switch, который выйдет в марте 2017 года, и его новые функции. Для тех, кто не знает, мы подготовили список функций, которые делают «Switch» обязательным гаджетом.

Технические обещания, которые все еще не выполнены

Технические обещания, которые все еще не выполнены

Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.

Как ИИ может вывести автоматизацию процессов на новый уровень?

Как ИИ может вывести автоматизацию процессов на новый уровень?

Прочтите это, чтобы узнать, как искусственный интеллект становится популярным среди небольших компаний и как он увеличивает вероятность их роста и дает преимущество перед конкурентами.

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

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

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

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA стало довольно сложно решать пользователям за последние несколько лет. Сможет ли он оставаться эффективным в обнаружении спама и ботов в ближайшем будущем?

Телемедицина и удаленное здравоохранение: будущее уже здесь

Телемедицина и удаленное здравоохранение: будущее уже здесь

Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше