Инсталиране на Fork CMS на FreeBSD 12

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

Изисквания

  • PHP версия 7.1 или по-нова.
  • MySQL версия 5.0 или по-нова.
  • Nginx

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

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

uname -ro
# FreeBSD 12.0-RELEASE

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

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): 
# Login group [johndoe]: 
# Login group is johndoe. Invite johndoe into other groups? []: wheel
# Login class [default]: 
# Shell (sh csh tcsh nologin) [sh]: bash
# Home directory [/home/johndoe]: 
# Home directory permissions (Leave empty for default): 
# Use password-based authentication? [yes]: 
# Use an empty password? (yes/no) [no]: 
# Use a random password? (yes/no) [no]: 
# Enter password: your_secure_password
# Enter password again: your_secure_password
# Lock out the account after creation? [no]: 
# 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

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

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

sudo pkg install -y php72 php72-curl php72-mbstring php72-session php72-json php72-ctype php72-dom php72-hash php72-iconv php72-gd php72-openssl php72-simplexml php72-xml php72-zip php72-zlib php72-filter php72-ftp php72-tokenizer php72-calendar php72-phar php72-fileinfo php72-intl php72-pdo_mysql php72-mysqli php72-xmlwriter

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

php --version
# PHP 7.2.15 (cli) (built: Feb 10 2019 01:13:27) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

Мека връзка php.ini-productionкъм php.ini.

sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini

Активирайте и стартирайте PHP-FPM.

sudo sysrc php_fpm_enable=yes
sudo service php-fpm start

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

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

sudo pkg install -y mariadb102-client mariadb102-server

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

mysql --version
# mysql  Ver 15.1 Distrib 10.2.22-MariaDB, for FreeBSD12.0 (amd64) using readline 5.1

Стартирайте и активирайте MariaDB.

sudo sysrc mysql_enable="yes" 
sudo service mysql-server start

Изпълнете mysql_secure_installationскрипта, за да подобрите сигурността на вашата инсталация.

sudo mysql_secure_installation

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

mysql -u root -p
# Enter password:

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

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

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

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

sudo pkg install -y nginx

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

nginx -v
# nginx version: nginx/1.14.2

Активирайте и стартирайте Nginx.

sudo sysrc nginx_enable=yes
sudo service nginx start

Изпълнете, за sudo vim /usr/local/etc/nginx/fork.confда конфигурирате Nginx за Fork CMS. Поставете следния текст.

server {

  listen 80;
  server_name example.com;
  root /usr/local/www/fork;
  index index.php index.html index.htm;

  location / {
    try_files $uri $uri/ @redirects;
  }
  location @redirects {
    rewrite ^ /index.php;
  }
  location ~ \.php$ {
    try_files $uri =404;
    include fastcgi_params;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    fastcgi_read_timeout 60;
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  }
  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;
  }
  location ~ /\. {
    deny all;
    access_log off;
    log_not_found off;
  }
}

Запазете файла и излезте с :+ W+ Q.

Сега трябва да включим fork.confфайла в основния nginx.confфайл.

Изпълнете sudo vim /usr/local/etc/nginx/nginx.confи добавете следния ред към http {}блока.

include fork.conf;

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

sudo nginx -t

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

sudo service nginx reload

Инсталирайте 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 за най-новите команди за инсталиране на Composer.

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

composer --version
# Composer version 1.8.4 2019-02-11 10:52:10

Изтеглете и настройте Fork CMS

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

sudo mkdir -p /usr/local/www/fork

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

sudo chown -R johndoe:johndoe /usr/local/www/fork

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

cd /usr/local/www/fork

Изтеглете Fork чрез composer.

composer create-project forkcms/forkcms .

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

sudo chown -R www:www /usr/local/www/fork

Рестартирайте PHP-FPM, ако е необходимо.

sudo service php-fpm restart

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