Hvordan installere Vanilla Forum på FreeBSD 12

Vanilla er et enkelt diskusjonsforum skrevet i PHP. Vanilla-kildekoden er offentlig vert på Github . Denne guiden vil lede deg gjennom Vanilla-installasjonsprosessen på en fersk FreeBSD 12 Vultr-serverforekomst som bruker PHP, MariaDB som database og Nginx som webserver.

Krav

Vanilla Forum anbefalt programvarestabel:

  • PHP versjon 7.2 eller nyere med følgende utvidelser:
    • mbstring
    • curl
    • gd
    • PDO
    • mysqli
    • openssl
  • MySQL versjon 5.7 eller nyere, eller tilsvarende MariaDB. Denne veiledningen vil bruke MariaDB
  • Webserverprogramvare som Nginx eller Apache. Denne veiledningen vil bruke Nginx
  • SSL-kryptering er valgfritt, men anbefales

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 noen grunnleggende systemadministrasjonspakker hvis de ikke finnes på systemet ditt.

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

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

Installer PHP- og PHP-utvidelser.

sudo pkg install -y php72 php72-mbstring php72-curl php72-gd php72-pdo php72-mysqli php72-pdo_mysql php72-json php72-openssl php72-ctype php72-dom php72-hash php72-iconv php72-tokenizer php72-calendar php72-fileinfo php72-session php72-simplexml php72-xml php72-filter

Sjekk versjonen.

php --version
# PHP 7.2.14 (cli) (built: Jan 15 2019 01:14:39) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

Myklink php.ini-productiontil php.ini.

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

Sjekk installerte PHP-utvidelser.

php -m
# mbstring
# curl
# gd
# PDO
# mysqli
# openssl
# . . .

Aktiver og start PHP-FPM.

sudo sysrc php_fpm_enable=yes
sudo service php-fpm start

Installer MariaDB

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

Start og aktiver MariaDB.

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

Kjør mysql_secure_installationskriptet for å forbedre sikkerheten til installasjonen.

sudo mysql_secure_installation

Logg inn på MariaDB som root-bruker.

mysql -u root -p
# Enter password:

Opprett en ny database og bruker. Husk legitimasjonen for denne nye brukeren.

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

Installer Nginx

Installer Nginx.

sudo pkg install -y nginx

Sjekk versjonen.

nginx -v
# nginx version: nginx/1.14.2

Aktiver og start Nginx.

sudo sysrc nginx_enable=yes
sudo service nginx start

Konfigurer Nginx for bruk med Vanilla-forum.

sudo vim /usr/local/etc/nginx/vanilla.conf

Fyll filen med følgende.

server {

  listen 80;
  server_name example.com;
  root /usr/local/www/vanilla;
  index index.php;

  location ~* /\.git { deny all; return 403; }
  location /build/ { deny all; return 403; }
  location /cache/ { deny all; return 403; }
  location /cgi-bin/ { deny all; return 403; }
  location /uploads/import/ { deny all; return 403; }
  location /conf/ { deny all; return 403; }
  location /tests/ { deny all; return 403; }
  location /vendor/ { deny all; return 403; }

  location ~* ^/index\.php(/|$) {
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    try_files $fastcgi_script_name =404;
    set $path_info $fastcgi_path_info;
    fastcgi_param PATH_INFO $path_info;
    fastcgi_index index.php;
    include fastcgi_params;
    fastcgi_param SCRIPT_NAME /index.php;
    fastcgi_param SCRIPT_FILENAME $realpath_root/index.php;
    fastcgi_param X_REWRITE 1;
    fastcgi_pass 127.0.0.1:9000;
  }

  location ~* \.php(/|$) {
    rewrite ^ /index.php$uri last;
  }

  location / {
    try_files $uri $uri/ @vanilla;
  }

  location @vanilla {
    rewrite ^ /index.php$uri last;
  }

}

Lagre filen og avslutt med :+ W+ Q.

Nå må vi inkludere vanilla.conffilen i hovedfilen nginx.conf.

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

include vanilla.conf;

Test konfigurasjonen.

sudo nginx -t

Last inn Nginx på nytt.

sudo service nginx reload

Installer Vanilla forum

Opprett en dokumentrotkatalog.

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

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

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

Naviger til dokumentets rotkatalog.

cd /usr/local/www/vanilla

Last ned det siste Vanilla-forumet .

wget https://open.vanillaforums.com/get/vanilla-core-2.6.4.zip

Pakk den ut og fjern zip-arkivet.

unzip vanilla-core-2.6.4.zip
rm vanilla-core-2.6.4.zip

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

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

Start PHP-FPM på nytt.

sudo service php-fpm restart

Naviger til mappen der du lastet opp Vanilla i nettleseren din og følg instruksjonene på skjermen for å fullføre oppsettet.

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