Cómo instalar Bludit CMS con NGINX en FreeBSD 12
Bludit es un CMS sencillo, rápido, seguro y de archivo plano que te permite crear tu sitio web o blog en cuestión de segundos. Es completamente gratuito y de código abierto. Puedes consultar su código fuente en Github. Bludit utiliza archivos en formato JSON para almacenar el contenido, no necesitas instalar ni configurar una base de datos. Sólo necesitas un servidor web compatible con PHP. Bludit incorpora todas las herramientas SEO para mejorar tu posicionamiento en todos los buscadores y redes sociales. Dispone de un rico sistema de temas y plugins que puedes utilizar para cambiar el aspecto de tu sitio. En este tutorial, realizaremos la instalación y configuración del CMS Bludit en el sistema FreeBSD 12 utilizando Nginx como servidor web.
Requisitos
Asegúrate de que tu sistema cumple los siguientes requisitos
- PHP versión 5.3 o superior con las siguientes extensiones: mbstring, gd, dom y JSON.
- Un servidor web con soporte PHP como Nginx, Apache, Lighttpd, H2O. Este tutorial utilizará Nginx.
Requisitos previos
- Un sistema que ejecute FreeBSD 12.
- Un usuario no root con privilegios sudo.
Pasos iniciales
Comprueba tu versión de FreeBSD:
uname -ro # FreeBSD 12.0-RELEASE
Configura la zona horaria:
tzsetup
Actualiza los paquetes (software) de tu sistema operativo. Este es un primer paso importante porque te asegura que tienes las últimas actualizaciones y correcciones de seguridad para los paquetes de software por defecto de tu sistema operativo:
freebsd-update fetch install pkg update && pkg upgrade -y
Instala algunos paquetes esenciales que son necesarios para la administración básica del sistema operativo FreeBSD 12.0:
pkg install -y sudo vim unzip wget bash socat git
Paso 1 – Instalar PHP
Instala PHP, así como las extensiones PHP necesarias:
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-filter php72-ftp php72-tokenizer php72-calendar php72-fileinfo
Para mostrar PHP compilado en módulos, puedes ejecutar:
php -m ctype curl exif fileinfo . . . . . .
Comprueba la versión de PHP:
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.0.0, Copyright (c) 1998-2017 Zend Technologies # with Zend OPcache v7.2.14, Copyright (c) 1999-2018, by Zend Technologies
Iniciar y habilitar el servicio PHP-FPM:
sudo sysrc php_fpm_enable=yes sudo service php-fpm start
Podemos pasar al siguiente paso, que es la instalación y configuración de acme.sh.
Paso 2 – Instalar el cliente acme.sh y obtener el certificado Let’s Encrypt (opcional)
Asegurar tu sitio web con HTTPS no es necesario, pero es una buena práctica para asegurar el tráfico de tu sitio. Para obtener un certificado TLS de Let’s Encrypt utilizaremos el cliente Acme.sh. Acme.sh es un software de shell Unix puro para obtener certificados TLS de Let’s Encrypt con cero dependencias.
Descarga e instala Acme.sh:
sudo mkdir /etc/letsencrypt git clone https://github.com/Neilpang/acme.sh.git cd acme.sh sudo ./acme.sh --install --home /etc/letsencrypt --accountemail [email protected] cd ~
Comprueba la versión de Acme.sh:
/etc/letsencrypt/acme.sh --version # v2.8.2
Obtén certificados RSA y ECC/ECDSA para tu dominio/nombre de host:
# RSA 2048 sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --keylength 2048 # ECDSA sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --keylength ec-256
Tras ejecutar los comandos anteriores, tus certificados y claves estarán dentro:
- Para RSA: directorio /etc/letsencrypt/ejemplo.com.
- Para ECC/ECDSA: directorio /etc/letsencrypt/ejemplo.com_ecc.
Paso 3 – Instalar y configurar NGINX
Descarga e instala NGINX desde el repositorio de FreeBSD:
sudo pkg install -y nginx
Comprueba la versión de NGINX:
nginx -v # nginx version: nginx/1.16.2
Inicia y activa el servicio NGINX:
sudo sysrc nginx_enable=yes sudo service nginx start
Configura NGINX para Bludit ejecutando:
sudo vim /usr/local/etc/nginx/bludit.conf
Y rellena el archivo con la siguiente configuración:
server { listen 80; listen 443 ssl; ssl_certificate /etc/letsencrypt/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/example.com/private.key; ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem; ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.key; server_name example.com; root /usr/local/www/bludit; index index.php; location ~ \.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_FILENAME $document_root$fastcgi_script_name; fastcgi_pass 127.0.0.1:9000; } location / { try_files $uri $uri/ /index.php?$args; } location ^~ /bl-content/tmp/ { deny all; } location ^~ /bl-content/pages/ { deny all; } location ^~ /bl-content/databases/ { deny all; } }
Ejecuta sudo vim /usr/local/etc/nginx/nginx.conf
y añade la siguiente línea al bloque http {}
para incluir la configuración de Bludit.
include bludit.conf;
Comprueba si hay errores de sintaxis en la configuración de Nginx:
sudo nginx -t
Recarga el servicio Nginx:
sudo service nginx reload
Paso 4 – Instalar Bludit
Crea un directorio raíz de documentos donde residirá Bludit:
sudo mkdir -p /usr/local/www/bludit
Navega hasta la raíz del documento:
cd /usr/local/www/bludit
Descarga la última versión de la página oficial y extrae el archivo zip:
sudo wget https://www.bludit.com/releases/bludit-3-9-2.zip sudo unzip bludit-3-9-2.zip sudo rm bludit-3-9-2.zip sudo mv bludit-3-9-2/* . && sudo mv bludit-3-9-2/.* . sudo rmdir bludit-3-9-2
NOTA: Actualiza la URL de descarga si hay una versión más reciente.
Proporciona la propiedad adecuada:
sudo chown -R www:www /usr/local/www/bludit
Reinicia el servicio PHP-FPM:
sudo service php-fpm restart
Paso 5 – Completa el asistente de instalación de Bludit
Abre tu sitio en un navegador web. Tras abrir tu sitio en un navegador web, deberías ser redirigido a la siguiente página, para elegir tu idioma:
A continuación, crea una contraseña para el usuario admin y haz clic en «Instalar»:
Tras crear una contraseña de administrador, serás redirigido al frontend de Bludit:
Para acceder al área de administración de Bludit, añade /admin a la IP o URL de tu sitio. Este es el aspecto de Bludit admin:
La instalación ha finalizado. Feliz blogueo con Bludit CMS.