Installere Bolt CMS på FreeBSD 12

Bolt er et åpen kildekode CMS skrevet i PHP. Bolts kildekode er vert på GitHub . Denne guiden viser deg hvordan du installerer Bolt CMS på en fersk FreeBSD 12 Vultr-forekomst.

Krav

  • PHP versjon 5.5.9 eller nyere.
  • Følgende vanlige PHP-utvidelser: pdo, mysqlnd(for å bruke MySQL som en database), pgsql(for å bruke PostgreSQL som en database), openssl, curl, gd, intl(valgfritt, men anbefalt), json, mbstring(valgfritt, men anbefalt), opcache(valgfritt, men anbefalt), posix, xml, fileinfo, exif, og zip.
  • Minst 32 MB minne allokert til PHP.
  • SQLite, MySQL/MariaDB eller PostgreSQL database. Denne opplæringen vil bruke MariaDB.
  • Nginx eller Apache med mod_rewriteaktivert. Denne opplæringen vil bruke Nginx.

Før du begynner

Sjekk FreeBSD-versjonen.

uname -ro
# FreeBSD 12.0-RELEASE

Sørg for at ditt FreeBSD-system er oppdatert.

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

Installer sudo, vim, unzip, wget, bash, socatog gitpakker hvis de ikke finnes på systemet.

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

Opprett en ny brukerkonto med ditt foretrukne brukernavn (vi bruker 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!

Kjør visudokommandoen og fjern kommentarfeltet for %wheel ALL=(ALL) ALLå la medlemmer av wheelgruppen utføre en kommando.

visudo

# Uncomment by removing hash (#) sign
# %wheel ALL=(ALL) ALL

Bytt nå til den nyopprettede brukeren med sukommando.

su - johndoe

MERK: Erstatt johndoemed brukernavnet ditt.

Sett opp tidssonen.

sudo tzsetup

Installer PHP

Last ned og installer PHP, samt nødvendige PHP-utvidelser.

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

Sjekk versjonen.

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

Myklink php.ini-productiontil php.ini.

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

Aktiver og start PHP-FPM.

sudo sysrc php_fpm_enable=yes
sudo service php-fpm start

Installer MariaDB og lag en database

Last ned og installer MariaDB.

sudo pkg install -y mariadb102-client mariadb102-server

Sjekk versjonen.

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

Aktiver og start MariaDB.

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

Kjør mysql_secure_installationskriptet for å forbedre sikkerheten til MariaDB-installasjonen.

sudo mysql_secure_installation

Svar på hvert av spørsmålene.

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!

Logg på MariaDB som root-bruker.

sudo mysql -u root -p
# Enter password:

Opprett en ny MariaDB-database og bruker, og husk legitimasjonen.

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

Avslutt MariaDB.

exit

Installer og konfigurer Nginx

Installer Nginx.

sudo pkg install -y nginx

Sjekk versjonen.

nginx -v
# nginx version: nginx/1.14.1

Aktiver og start Nginx.

sudo sysrc nginx_enable=yes
sudo service nginx start

Kjør sudo vim /usr/local/etc/nginx/bolt.confog konfigurer Nginx for 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;
  }

}

Lagre filen og avslutt med :+ W+ Q.

Nå må vi inkludere bolt.conffil til hovedfilen nginx.conf.

Kjør sudo vim /usr/local/etc/nginx/nginx.confog legg til følgende linje i http {}blokken.

include bolt.conf;

Test Nginx-konfigurasjonen.

sudo nginx -t

Last inn Nginx på nytt.

sudo service nginx reload

Last ned og installer Bolt CMS

Opprett en dokumentrotkatalog.

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

Endre eierskap av /usr/local/www/boltkatalogen til johndoe.

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

Naviger til dokumentets rotkatalog.

cd /usr/local/www/bolt

Last ned den siste stabile utgaven av Bolt CMS fra kommandolinjen.

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

Pakk ut Bolt CMS, fjern nedlastet zip-fil og flytt Bolt CMS-filer og kataloger til /usr/local/www/boltkatalogen.

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/

For å fullføre installasjonen, må du endre navn på følgende filer:

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 

Endre eierskap av /usr/local/www/boltkatalogen til www.

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

Åpne ditt domene/IP i nettleseren og følg installasjonsveiviseren for Bolt CMS. Bolt bruker SQLite (som standard) som database. Hvis du vil bruke en annen støttet database, kan du konfigurere den i app/config/config.ymlfilen. Etter det vil du ha Bolt installert på din FreeBSD 12-server. For å få tilgang til Bolts administrative grensesnitt, legg /bolttil ditt domene/IP. Hvis du vil lære mer, se Bolt-dokumentasjonen på https://docs.bolt.cm .

Legg igjen en kommentar

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Kunstig intelligens er ikke i fremtiden, det er her akkurat i nåtiden I denne bloggen Les hvordan kunstig intelligens-applikasjoner har påvirket ulike sektorer.

DDOS-angrep: en kort oversikt

DDOS-angrep: en kort oversikt

Er du også et offer for DDOS-angrep og forvirret over forebyggingsmetodene? Les denne artikkelen for å løse spørsmålene dine.

Har du noen gang lurt på hvordan hackere tjener penger?

Har du noen gang lurt på hvordan hackere tjener penger?

Du har kanskje hørt at hackere tjener mye penger, men har du noen gang lurt på hvordan tjener de den slags penger? la oss diskutere.

Revolusjonerende oppfinnelser fra Google som vil gjøre livet ditt enkelt.

Revolusjonerende oppfinnelser fra Google som vil gjøre livet ditt enkelt.

Vil du se revolusjonerende oppfinnelser fra Google og hvordan disse oppfinnelsene forandret livet til alle mennesker i dag? Les deretter til bloggen for å se oppfinnelser fra Google.

Fredag ​​Essential: Hva skjedde med AI-drevne biler?

Fredag ​​Essential: Hva skjedde med AI-drevne biler?

Konseptet med selvkjørende biler som skal ut på veiene ved hjelp av kunstig intelligens er en drøm vi har hatt en stund nå. Men til tross for flere løfter, er de ingen steder å se. Les denne bloggen for å lære mer...

Teknologisk singularitet: en fjern fremtid for menneskelig sivilisasjon?

Teknologisk singularitet: en fjern fremtid for menneskelig sivilisasjon?

Ettersom vitenskapen utvikler seg raskt og tar over mye av innsatsen vår, øker også risikoen for å utsette oss for en uforklarlig singularitet. Les hva singularitet kan bety for oss.

Funksjonaliteter til Big Data Reference Architecture Layers

Funksjonaliteter til Big Data Reference Architecture Layers

Les bloggen for å kjenne ulike lag i Big Data Architecture og deres funksjoner på den enkleste måten.

Evolusjon av datalagring – infografikk

Evolusjon av datalagring – infografikk

Lagringsmetodene for dataene har vært i utvikling kan være siden fødselen av dataene. Denne bloggen dekker utviklingen av datalagring på grunnlag av en infografikk.

6 fantastiske fordeler ved å ha smarte hjemmeenheter i livene våre

6 fantastiske fordeler ved å ha smarte hjemmeenheter i livene våre

I denne digitaldrevne verden har smarthusenheter blitt en avgjørende del av livet. Her er noen fantastiske fordeler med smarthusenheter om hvordan de gjør livet vårt verdt å leve og enklere.

macOS Catalina 10.15.4 tilleggsoppdatering forårsaker flere problemer enn å løse

macOS Catalina 10.15.4 tilleggsoppdatering forårsaker flere problemer enn å løse

Nylig lanserte Apple macOS Catalina 10.15.4 en tilleggsoppdatering for å fikse problemer, men det ser ut til at oppdateringen forårsaker flere problemer som fører til muring av mac-maskiner. Les denne artikkelen for å lære mer