Microweber Website Builder installeren op FreeBSD 12

Microweber is een drag and drop website bouwer en een krachtig next-generation CMS. Het is gebaseerd op het PHP Laravel Framework. Je kunt Microweber gebruiken om elke soort website, online winkel en blog te maken. De drag and drop technologie stelt je in staat je website te bouwen zonder enige technische kennis.

Het kernidee van de software is dat je je eigen website, online winkel of blog kunt maken. Vanaf dit moment van creatie begint je reis naar succes. Ondersteunend op je weg zijn verschillende modules, aanpassingen en functies van het CMS. Vele daarvan zijn speciaal op maat gemaakt voor e-commerce enthousiastelingen en bloggers.

Het belangrijkste dat je moet weten is dat Microweber de nieuwste drag and drop technologie paart aan een revolutionaire Real-Time Tekst Schrijf en Bewerk functie. Dit tweetal functies levert een verbeterde gebruikerservaring, gemakkelijker en sneller inhoudbeheer, een visueel aantrekkelijke omgeving, en flexibiliteit.

Deze handleiding toont je hoe je Microweber kunt installeren op een vers FreeBSD 12 systeem met Nginx als webserver en MariaDB als database engine.

Vereisten

De vereisten voor het installeren en draaien van Microweber zijn als volgt:

  • PHP versie 5.4 of hoger met de volgende PHP extensies: gd2, mcrypt, xml, dom, json
  • Web server software zoals Nginx of Apache.
  • MySQL versie 5.0 of hoger of MariaDB equivalent.
  • Composer.

Vereisten

  • FreeBSD 12 besturingssysteem.
  • Een niet-root gebruiker met sudo privileges.

Ik zal in deze handleiding de domeinnaam example.com gebruiken. Vervang het woord example.com door je eigen domeinnaam overal waar het voorkomt in de onderstaande commando’s en configuratiebestanden (vooral in het Nginx configuratiebestand en de Let’s encrypt commando’s).

Eerste stappen

Controleer je FreeBSD versie:

uname -ro
# FreeBSD 12.1-RELEASE

Stel de tijdzone in:

tzsetup

Werk je besturingssysteem pakketten (software) bij. Dit is een belangrijke eerste stap omdat je er zeker van bent dat je de laatste updates en beveiligingsfixes hebt voor de standaard softwarepakketten van je besturingssysteem:

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

Installeer enkele essentiƫle pakketten die nodig zijn voor het basisbeheer van het FreeBSD 12.0 besturingssysteem:

pkg install -y sudo vim unzip wget bash socat

Stap 1 – Installeer PHP en de nodige PHP uitbreidingen

De Microweber webapplicatie vereist PHP versie 5.4 of hoger. We kunnen nieuwere PHP gemakkelijk installeren met de pakketbeheerder pkg op FreeBSD 12.

Installeer PHP, en ook de nodige PHP uitbreidingen:

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

Om PHP gecompileerd in modules te tonen, kun je uitvoeren:

php -m

ctype
curl
exif
fileinfo
. . .
. . .

Controleer de PHP versie:

php --version

# PHP 7.2.16 (cli) (built: Apr 30 2019 08:37:17) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.3.5, Copyright (c) 1998-2018 Zend Technologies
# with Zend OPcache v7.3.5, Copyright (c) 1999-2018, by Zend Technologies

Start en schakel de PHP-FPM dienst in:

sudo sysrc php_fpm_enable=yes
sudo service php-fpm start

We kunnen verder naar de volgende stap waar we acme.sh client installeren en SSL certs verkrijgen.

Stap 2 – Installeer acme.sh client en verkrijg Let’s Encrypt certificaat ( optioneel )

Je site beveiligen met HTTPS is niet noodzakelijk, maar het is een goed gebruik om je site verkeer te beveiligen. Om een TLS certificaat van Let’s Encrypt te verkrijgen zullen we acme.sh client gebruiken. Acme.sh is een eenvoudige UNIX shell software voor het verkrijgen van TLS certificaten van Let’s Encrypt zonder afhankelijkheden.

Download en installeer acme.sh:

sudo pkg install -y acme.sh

Controleer de versie van acme.sh:

acme.sh --version
# v2.8.2

Verkrijg RSA en ECC/ECDSA certificaten voor je domein/hostnaam:

# RSA 2048
acme.sh --issue --standalone -d example.com --keylength 2048
# ECDSA
acme.sh --issue --standalone -d example.com --keylength ec-256

Als je valse certificaten wilt om te testen, kun je --staging vlag toevoegen aan bovenstaande commando’s.

Na het uitvoeren van de bovenstaande commando’s staan je certificaten en sleutels in:

  • Voor RSA: /home/username/example.com directory.
  • Voor ECC/ECDSA: /home/username/example.com_ecc directory.

Om je uitgegeven certs op te sommen kun je uitvoeren:

acme.sh --list

Maak een directory om je certs in op te slaan. We zullen de/etc/letsencrypt directory gebruiken.

mkdir -p /etc/letsecnrypt/example.com
sudo mkdir -p /etc/letsencrypt/example.com_ecc

Installeer/kopieer certificaten naar /etc/letsencrypt directory.

# RSA
acme.sh --install-cert -d example.com --cert-file /etc/letsencrypt/example.com/cert.pem --key-file /etc/letsencrypt/example.com/private.key --fullchain-file /etc/letsencrypt/example.com/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"
# ECC/ECDSA
acme.sh --install-cert -d example.com --ecc --cert-file /etc/letsencrypt/example.com_ecc/cert.pem --key-file /etc/letsencrypt/example.com_ecc/private.key --fullchain-file /etc/letsencrypt/example.com_ecc/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"

Alle certificaten worden om de 60 dagen automatisch vernieuwd.

Na het verkrijgen van certs verlaat je de root gebruiker en ga je terug naar de gewone sudo gebruiker:

exit

Stap 3 - Installeer MariaDB en maak een databank

Installeer de databaseserver MariaDB:

sudo pkg install -y mariadb102-client mariadb102-server

Controleer deMariaDB versie:

mysql --version
# mysql  Ver 15.1 Distrib 10.2.23-MariaDB, for Linux (x86_64) using readline 5.1

Start de MariaDB dienst en schakel die in:

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

Voermysql_secure installation script uit omMariaDB beter te beveiligen en stel het wachtwoord in voor deMariaDB root gebruiker:

sudo mysql_secure_installation

Beantwoord elk van de vragen:

Would you like to setup VALIDATE PASSWORD plugin? N
New password: your_secure_password
Re-enter new password: your_secure_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

Maak verbinding metMariaDB shell als de root gebruiker:

sudo mysql -u root -p
# Enter password

Maak een legeMariaDB databank en gebruiker voor Microweber en onthoud de credentials:

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

SluitMariaDB af:

mysql> exit

Vervang dbname, username en password door je eigen namen.

Stap 4 - Installeer en configureer NGINX

Installeer de NGINX webserver:

sudo pkg install -y nginx

Controleer de NGINX versie:

nginx -v
# nginx version: nginx/1.14.2

Start de NGINX dienst en schakel hem in:

sudo sysrc nginx_enable=yes
sudo service nginx start

Configureer Nginx voor Microweber door te draaien:

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

En vul het bestand met de volgende configuratie:

server {
  listen 80;
listen 443 ssl;
server_name example.com; root /usr/local/www/microweber;

# RSA
ssl_certificate /etc/letsencrypt/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com/private.key;
# ECC
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.key; index index.php; location / { try_files $uri $uri/ /index.php$is_args$args; } location ~ \.php$ { try_files $uri =404; include fastcgi_params; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_pass 127.0.0.1:9000; } }

Voer sudo vim /usr/local/etc/nginx/nginx.conf uit en voeg de onderstaande regel toe aan http {} blok om Microweber config op te nemen.

include microweber.conf;

Controleer Nginx configuratie op syntaxfouten:

sudo nginx -t

Herlaad Nginx service:

sudo service nginx reload

Stap 5 - Installeer Microweber

Maak een document root directory waar Microweber in moet komen te staan:

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

Navigeer naar de document root directory:

cd /usr/local/www/microweber

Download de nieuwste versie van Microweber CMS en pak het uit:

sudo wget https://download.microweberapi.com/ready/core/microweber-latest.zip
sudo unzip microweber-latest.zip
sudo rm microweber-latest.zip

Verander het eigendom van de /usr/local/www/microweber directory in www:

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

Open je domeinnaam (http://example.com/) in je webbrowser en volg de instructies. Na de installatie zal de URL van je beheerderspaneel op http://example.com/admin staan.

Stap 6 - Voltooi de installatie van Microweber

Open je web browser en typ de URL http://example.com. Je wordt doorgestuurd naar de volgende pagina waar je de databasemotor van je keuze moet kiezen. Deze handleiding gebruikt MySQL/MariaDB. Je kunt SQLite kiezen zoals de schermafbeelding hieronder laat zien:

Gegevensbestand

Je kuntde MySQL database engine kiezen:

Kies MySQL server

Of PostgreSQL als je dat liever hebt:

Of PostgreSQL

Na het invoeren van de gevraagde gegevens is de installatie van Microweber voltooid. Om toegang te krijgen tot Microweber admin voeg je /admin toe aan je website URL.

Microweaver Inloggen

Na inloggen zie je hier hoe het Microweber dashboard er uit ziet:

Microweber dashboard

En hier is de Microweber frontend:

Microweaver CMS