Установка Bolt CMS на FreeBSD 12

Bolt - это CMS с открытым исходным кодом, написанная на PHP. Исходный код Болта размещен на GitHub . Это руководство покажет вам, как установить Bolt CMS на свежий экземпляр FreeBSD 12 Vultr.

Требования

  • Версия PHP 5.5.9 или выше.
  • Следующие общие расширения PHP: pdo, mysqlnd(для использования MySQL в качестве базы данных), pgsql(использовать PostgreSQL в качестве базы данных), openssl, curl, gd, intl( не обязательно , но рекомендуется), json, mbstring( не обязательно , но рекомендуется) opcache(необязательно , но рекомендуется), posix, xml, fileinfo, exifи zip.
  • Минимум 32 МБ памяти выделено для PHP.
  • База данных SQLite, MySQL / MariaDB или PostgreSQL. Этот урок будет использовать MariaDB.
  • Nginx или Apache с mod_rewriteвключенным. Этот урок будет использовать Nginx.

Прежде чем вы начнете

Проверьте версию FreeBSD.

uname -ro
# FreeBSD 12.0-RELEASE

Убедитесь, что ваша система FreeBSD обновлена.

freebsd-update fetch install
pkg update && pkg upgrade -y

Установить sudo, vim, unzip, wget, bash, socatи gitпакеты , если они не присутствуют в вашей системе.

pkg install -y sudo vim unzip wget bash bash-completion socat git

Создайте новую учетную запись пользователя с вашим предпочтительным именем пользователя (мы будем использовать johndoe).

adduser

# Username: johndoe
# Full name: John Doe
# Uid (Leave empty for default): <Enter>
# Login group [johndoe]: <Enter>
# Login group is johndoe. Invite johndoe into other groups? []: wheel
# Login class [default]: <Enter>
# Shell (sh csh tcsh nologin) [sh]: bash
# Home directory [/home/johndoe]: <Enter>
# Home directory permissions (Leave empty for default): <Enter>
# Use password-based authentication? [yes]: <Enter>
# Use an empty password? (yes/no) [no]: <Enter>
# Use a random password? (yes/no) [no]: <Enter>
# Enter password: your_secure_password
# Enter password again: your_secure_password
# Lock out the account after creation? [no]: <Enter>
# 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-ctype php72-curl php72-dom php72-hash php72-iconv php72-gd php72-json php72-mbstring php72-openssl php72-session php72-simplexml php72-xml php72-zip php72-zlib php72-pdo php72-pdo_mysql php72-mysqli php72-pgsql php72-sqlite3 php72-filter php72-ftp php72-tokenizer php72-calendar php72-pecl-APCu php72-opcache php72-phar php72-fileinfo php72-sqlite3 php72-pdo_sqlite php72-intl php72-posix php72-exif

Проверьте версию.

php --version

# PHP 7.2.13 (cli) (built: Dec 23 2018 01:12:48) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
#     with Zend OPcache v7.2.13, Copyright (c) 1999-2018, by 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 и создайте базу данных

Скачайте и установите MariaDB.

sudo pkg install -y mariadb102-client mariadb102-server

Проверьте версию.

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

Включите и запустите MariaDB.

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

Запустите mysql_secure_installationскрипт, чтобы повысить безопасность вашей установки MariaDB.

sudo mysql_secure_installation

Ответь на каждый из вопросов.

Enter current password for root (enter for none): <enter>
Set root password? [Y/n] y
New password: ********************************
Re-enter new password: ********************************
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y
. . .
All done!

Войдите в MariaDB как пользователь root.

sudo mysql -u root -p
# Enter password:

Создайте новую базу данных MariaDB и пользователя и запомните учетные данные.

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

Выход из MariaDB.

exit

Установите и настройте Nginx

Установите Nginx.

sudo pkg install -y nginx

Проверьте версию.

nginx -v
# nginx version: nginx/1.14.1

Включите и запустите Nginx.

sudo sysrc nginx_enable=yes
sudo service nginx start

Запустите sudo vim /usr/local/etc/nginx/bolt.confи настройте Nginx для Bolt.

server {

  listen [::]:80;
  listen 80;

  server_name example.com; # Check this
  index index.php index.html; 

  root /usr/local/www/bolt/public; # Check this

  # Block access to "hidden" files
  location ~ /\. {
    deny all;
  }

  # Block access to Apache .htaccess & .htpasswd files
  location ~ /\.(htaccess|htpasswd)$ {
    deny all;
  }

  # Block access to Sqlite database files
  location ~ /\.(?:db)$ {
    deny all;
  }

  # Block access to Markdown, Twig & YAML files directly
  location ~* /(.*)\.(?:markdown|md|twig|yaml|yml)$ {
    deny all;
  }

  location / {
    try_files $uri $uri/ /index.php?$query_string;
  }

  location ~ [^/]\.php(/|$) {
    try_files /index.php =404;
    fastcgi_split_path_info ^(.+?\.php)(/.*)$;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param HTTP_PROXY "";
    fastcgi_param HTTPS $https if_not_empty;
    fastcgi_pass 127.0.0.1:9000; # Check this
    include fastcgi_params;
  }

}

Сохраните файл и выйдите с помощью :+ W+ Q.

Теперь нам нужно включить bolt.confфайл в основной nginx.confфайл.

Запустите sudo vim /usr/local/etc/nginx/nginx.confи добавьте следующую строку в http {}блок.

include bolt.conf;

Проверьте конфигурацию Nginx.

sudo nginx -t

Перезагрузить Nginx.

sudo service nginx reload

Скачайте и установите Bolt CMS

Создайте корневой каталог документа.

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

Изменить владельца /usr/local/www/boltкаталога на johndoe.

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

Перейдите в корневой каталог документа.

cd /usr/local/www/bolt

Загрузите последнюю стабильную версию Bolt CMS из командной строки.

wget https://bolt.cm/distribution/bolt-latest.zip

Разархивируйте Bolt CMS, удалите загруженный zip-файл и переместите файлы и каталоги Bolt CMS в /usr/local/www/boltкаталог.

unzip bolt-latest.zip
rm bolt-latest.zip
mv bolt-v3.6.3/* bolt-v3.6.3/.* . # Just press enter on warning
rmdir bolt-v3.6.3/

Для завершения установки вам нужно будет переименовать следующие файлы:

mv .bolt.yml.dist .bolt.yml
mv composer.json.dist composer.json
mv composer.lock.dist composer.lock
mv src/Site/CustomisationExtension.php.dist src/Site/CustomisationExtension.php 

Изменить владельца /usr/local/www/boltкаталога на www.

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

Откройте свой домен / IP в веб-браузере и следуйте указаниям мастера установки Bolt CMS. В качестве базы данных Bolt использует SQLite (по умолчанию). Если вы хотите использовать другую поддерживаемую базу данных, вы можете настроить ее в app/config/config.ymlфайле. После этого на вашем сервере FreeBSD 12 будет установлен Bolt. Чтобы получить доступ к административному интерфейсу Bolt, добавьте /boltваш домен / IP. Если вы хотите узнать больше, см. Документацию Bolt по адресу https://docs.bolt.cm .



Leave a Comment

Изучение 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. Прочтите эту статью, чтобы узнать больше