GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo instalar BoltWire CMS con Nginx en Ubuntu 20.04 LTS

Bolt es un sistema de gestión de contenido (CMS) ligero construido sobre el popular marco PHP. Bolt es perfecto para una pequeña empresa que quiere mantener su propio sitio web sin preocuparse por tener que aprender HTML y otros lenguajes de programación. Bolt cuenta con funciones avanzadas, como marcas wiki sólidas, comercio electrónico, galería de fotos y generador de álbumes, reproductor y galería de audio, y libros de visitas.

Boltwire se destaca por ser completamente gratuito para individuos y grupos de todos los tamaños que necesitan un CMS. Joe Casabona es el creador de Boltwire y comparte su pasión ayudando a otros a aprovechar al máximo su proyecto de código abierto. Bolt se utiliza en más de 200 países para administrar más de 500 000 sitios web. Sus desarrolladores son voluntarios y esperan que todos los usuarios participen en el proyecto ofreciendo comentarios y contribuyendo a su desarrollo.

Bolt tiene algunas características únicas:

  • Generación dinámica de páginas:una página se puede ensamblar en función de los datos encontrados al obtenerlos de la base de datos. Por ejemplo, cuando un usuario publica una nueva entrada en un diario en línea, se pueden agregar dinámicamente otras entradas de su blog sin tener que actualizar toda la página web. Esto permite tiempos de carga más rápidos, especialmente con grandes cantidades de páginas o elementos multimedia por categoría (por ejemplo, todas las fotos en una galería de fotos).
  • Gestión y administración de contenido:varios usuarios pueden gestionar el contenido, para garantizar que cada usuario solo pueda cambiar ciertas partes de las páginas. También se les puede restringir lo que pueden ver o editar. Por ejemplo, a la mayoría de las personas no se les permite publicar nuevos artículos o agregar comentarios libremente; esto está reservado para los administradores del sitio. Los lectores aún pueden ver cualquier artículo sin iniciar sesión primero, a menos que el administrador especifique lo contrario.
  • Fácil de usar:Bolt reduce en gran medida la cantidad de esfuerzo necesario para crear páginas web en comparación con otros CMS como Joomla y Drupal. Los asistentes integrados en Bolt automatizan gran parte de su proceso de configuración para que no tenga que preocuparse por cómo funcionan las cosas debajo del capó.
  • Fácil extensibilidad:debido a que Bolt es de código abierto, es fácil crear nuevos módulos que amplíen o agreguen funciones a Bolt. Las nuevas funciones a menudo se integran en el software central, lo que las hace aún más fáciles de usar. Con alrededor de 40 extensiones disponibles en Modboom actualmente, puede extender fácilmente cualquier parte de Bolt que desee sin tener que aventurarse demasiado en la programación PHP.
  • BoltWire viene en varios idiomas:inglés (predeterminado), alemán, italiano, japonés, polaco, portugués y español. Además de los paquetes estándar de BoltWire para los idiomas anteriores, también está disponible una localización completa en francés (100 %) y holandés (más del 50 %).

La desventaja es que hay poco soporte disponible aparte de los foros de ayuda si tiene alguna pregunta sobre cómo funcionan las cosas en su idioma local. En este sentido, es su propia responsabilidad hacer que las cosas funcionen como le gustaría. Sin embargo, si se siente cómodo usando un editor de texto y tiene tiempo para trabajar en Bolt usted mismo, entonces no hay nada que le impida crear un sitio web simple pero de apariencia profesional en minutos.

En esta guía, aprenderemos cómo instalar BoltWire en el servidor Ubuntu 20.04.

Requisitos

  • Un servidor nuevo con Ubuntu 20.04.
  • Acceso raíz SSH completo o usuario con privilegios sudo.
  • Un nombre de dominio está registrado y apunta a su servidor.

Cómo empezar

En primer lugar, inicie sesión en su Ubuntu con SSH.

ssh [email protected]_Address -p Port_number

root es el usuario predeterminado en Ubuntu, reemplace 'root' con el nombre de su propio usuario, si usa otro.

IP_Address es la dirección de su servidor. Puede verificar esto usando

hostname -I  en la línea de comandos. Port_number debe ser 22 para SSH.

hostname -I

el '-p' le dice a ssh que use el puerto especificado. Si no especifica un número de puerto, se utiliza 22 .

Si está detrás de un firewall, es posible que el puerto 22 esté bloqueado. En ese caso, cambie Port_number a algo más como 2222.

Actualizando su Sistema

Puede verificar si su sistema tiene instalada la versión adecuada de Ubuntu con el siguiente comando:

sudo lsb_release -a

Salida de muestra: 

Siempre es recomendable actualizar el sistema antes de instalar paquetes.

sudo apt-get update && apt-get upgrade -y

-y es un comando que responderá automáticamente 'Sí' a todas las preguntas durante el proceso de actualización. apt-get update actualiza las listas de paquetes y apt-get upgrade actualiza su sistema.

Salida de muestra: 

La actualización puede tardar algún tiempo dependiendo de cuántos paquetes deban descargarse e instalarse. Una vez que se haya completado la actualización, se le pedirá que reinicie su servidor. Ejecutando el siguiente comando para reiniciar su sistema después de las actualizaciones:

sudo reboot

Instalación de paquetes necesarios

La instalación de Bolt requiere la instalación de una serie de paquetes en su sistema. Algunos de los paquetes se instalan en un orden específico. En este caso, instalaremos todo el paquete requerido para la instalación de Bolt con el siguiente comando:

sudo apt install -y curl wget vim git unzip socat bash-completion apt-transport-https

socat es para proxy, lo que hace que Bolt parezca estar ejecutándose en el servidor web.

apt-transport-https permite operaciones de línea de comandos como sudo apt update para trabajar con conexiones https. bash-completion es un programa que permite que bash complete automáticamente los comandos después de escribir los primeros caracteres.

curl se usa para descargar paquetes y wget se usa para descargar archivos como la última versión de Bolt desde su sitio web.

Salida de muestra: 

Instalando Nginx

Nginx se usa como un proxy inverso para administrar sus sitios web en Bolt. Nginx es liviano, fácil de configurar y rápido. Ejecutando el siguiente comando para instalar Nginx

sudo apt-get install nginx

Escriba 'y' si se le solicita, el proceso de instalación comenzará automáticamente.

Salida de muestra: 

Una vez completada la instalación, inicie el servicio nginx y permita que se ejecute al iniciar el sistema

sudo systemctl start nginx
sudo systemctl enable nginx

Para verificar y verificar si Nginx se está ejecutando actualmente o no, use este comando en la terminal.

sudo systemctl status nginx

Salida de muestra: 

Configurar Nginx 

BoltWire CMS está instalado en el directorio /var/www/. Para acceder y probar BoltWire CMS, debemos configurar el bloque del servidor Nginx para enrutar las solicitudes a la ruta de la carpeta webroot /var/www/automáticamente para todas las solicitudes de contenido estático, así como las solicitudes de archivos de módulos y complementos.

Ejecute los siguientes comandos para crear un nuevo archivo de configuración llamado bolt.conf

sudo nano /etc/nginx/sites-available/bolt.conf

Complete el archivo de configuración con el siguiente contenido:

server {
listen 80;
 listen [::]:80; 
 root /var/www/bolt; 
 index index.php index.html index.htm; 
 server_name bolt.example.com;

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

 location ~ [^/]\.php(/|$) { 
  try_files      /index.php =404;
  fastcgi_split_path_info ^(.+\.php)(/.+)$;
  fastcgi_index      index.php;
 fastcgi_pass       unix:/var/run/php/php7.2-fpm.sock;
  include         fastcgi_params;
  fastcgi_param  PATH_INFO    $fastcgi_path_info;
 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  } 

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

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

}

El bloque del servidor Nginx que acabamos de crear usa la raíz del documento predeterminada que está configurada en el directorio /var/www/. Si está ejecutando BoltWire CMS en un entorno de servidor diferente, edite el archivo conf y reemplace la ruta de la raíz del documento según corresponda.

La directiva server_name configura la URL que escuchará su servidor web Nginx. Reemplace bolt.example.com con el nombre de dominio o la dirección IP de su servidor.

try_files      $uri $uri/ /index.php?$query_string; Esta directiva le permite manejar las solicitudes de ruta de archivo directamente si las encuentra. Por ejemplo, si un usuario intenta acceder a la página de inicio de BoltWire CMS desde el navegador, /index.php se usará como archivo de índice si existe; de ​​lo contrario, volverá a PHP-FPM devolverá la respuesta 404 No encontrado.

Después de realizar cambios y guardarlos en el archivo bolt.conf, vuelva a cargar Nginx y reinícielo para que la nueva configuración surta efecto.

sudo systemctl reload nginx
sudo systemctl restart nginx

Verifique la configuración de nginx ejecutando los siguientes comandos:

sudo nginx -t

Salida de muestra: 

Instalando MySQL

BoltWire CMS requiere como mínimo la versión 4.2 del servidor MySQL, pero BoltWire CMS no funciona con 5.x+.

Así que tiene varias opciones:Use un servidor de base de datos remoto como Microsoft SQL Server Implemente MySQL en todas las máquinas del servidor web (no recomendado) Actualice su versión de MySQL. Las primeras opciones son bastante sencillas, pero el tipo de actualización es complejo.

Para aquellos que usan una pila LAMP (Linux, Apache, MySQL y PHP), no tienen que instalar MySQL por separado porque Ubuntu ya incluye el servidor MySQL en su repositorio.

Ejecutando el siguiente comando para instalar MySQL:

sudo apt -y install mysql-server

Salida de muestra: 

Una vez completada la instalación, ejecute el siguiente comando para iniciar el demonio MySQL (servidor MySQL) para esta sesión y permitir que se ejecute al iniciar el sistema:

sudo systemctl start mysql
sudo systemctl enable mysql 

Creando una base de datos

Usaremos la línea de comando para crear una base de datos llamada bolt.

Conéctese a mysql para crear una base de datos ejecutando el siguiente comando:

sudo mysql -u root -p 

Ingrese la contraseña de root para mysql. Ahora ha iniciado sesión en la consola mysql. Para crear una base de datos y un usuario de base de datos, ejecute el siguiente comando:

CREATE DATABASE bolt;
CREATE USER 'bolt'@'localhost' IDENTIFIED BY 'mypassword';
GRANT ALL ON bolt.* TO 'bolt'@'localhost'; 
FLUSH PRIVILEGES; 
exit

CREAR USUARIO 'bolt'@'localhost' IDENTIFICADO POR 'mypassword' creará un usuario 'bolt' cuya contraseña es 'mypassword'. ¡Use una contraseña segura en lugar de la palabra 'mypassword' aquí! Los privilegios de descarga volverán a cargar la tabla de privilegios de concesión creada anteriormente.

Instalando PHP

BoltWire CMS requiere PHP versión 7 o superior y sus encabezados de desarrollo. Agregaremos ppa:ondrej/php PPA con la versión de PHP requerida (7.2), puede cambiar esto a su versión de PHP necesaria por su cuenta. Ejecutaremos los siguientes comandos para agregar el ppa y actualizar apt-get

sudo apt -y install software-properties-common 
sudo add-apt-repository ppa:ondrej/php 
sudo apt-get update

Ejecutando el siguiente comando para instalar PHP 7.2:

sudo apt install -y php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-mbstring php7.2-zip php7.2-pgsql php7.2-sqlite3 php7.2-curl php7.2-gd php7.2-mysql php7.2-intl php7.2-json php7.2-opcache php7.2-xml

php7.2-cli es la interfaz de línea de comandos para PHP7.2 y con php7.2-common instalará las extensiones php7.2, el módulo del servidor web (PHP) y las extensiones CLI estándar. Con php7.2 -fpm instalará FastCGI Process Manager, una forma común de ejecutar aplicaciones PHP desde su servidor web. php7.2-mbstring instalará funciones de cadena multibyte que se requieren para BoltWire CMS. php7.2-opcache instalará el caché de código de operación para PHP7.2, lo que proporciona un mejor rendimiento y reduce la carga en su servidor web al almacenar en caché los scripts compilados. php7.2-xml instalará extensiones de procesamiento XML para PHP7.2, necesarias para usar BoltWire CMS.

Salida de muestra: 

Después de instalar PHP 7.2, ejecute los siguientes comandos para verificar su versión de PHP7.2:

php -v 

Salida de muestra: 

A continuación, abra el archivo de configuración predeterminado de PHP para Nginx usando el editor de texto nano:

sudo nano /etc/php/7.2/fpm/php.ini

Ahora vamos a hacer los cambios en las siguientes líneas:

file_uploads = On
allow_url_fopen = On
memory_limit = 256M
upload_max_filesize = 100M
max_execution_time = 360
date.timezone = America/St. Louis
  • file_uploads =On activa la función de carga de archivos en BoltWire CMS.
  • allow_url_fopen =On permite direcciones URL directas o redirección HTTP en solicitudes con archivos cargados desde el servidor web remoto.
  • memory_limit =256M es el límite de memoria PHP 7.2 en MB para establecer para los procesos de trabajo de Nginx, ejecutar un script PHP con un alto consumo de memoria puede causar un error de tiempo de ejecución de php.
  • upload_max_filesize =100M es el tamaño máximo para un solo archivo cargado en el sitio de BoltWire CMS, si desea habilitar la carga de archivos de tamaño ilimitado, cambie este valor a 0.
  • max_execution_time =360 es el tiempo de ejecución máximo en segundos para que se ejecute el script PHP, si un script excede este valor, se cancelará.
  • date.timezone =América/St. Louis, la zona horaria de su ubicación para mostrar los valores de fecha y hora del cliente correctamente en el sistema BoltWire CMS.

Reinicie php7.2-fpm para aplicar los cambios anteriores:

sudo service php7.2-fpm restart

Esto debería ser suficiente para PHP7.2 requerido y paquetes relacionados, pasemos al siguiente paso.

Instalando Composer

BoltWire CMS requiere que Composer agregue sus bibliotecas externas requeridas al sitio web, por lo que primero debemos instalarlo antes de continuar con este tutorial. Composer es un administrador de paquetes para PHP que administra las dependencias de los proyectos PHP. Es similar a npm o ruby ​​gems de NodeJS.

Primero, nos movemos al directorio de inicio y descargamos el instalador: 

sudo curl -sS https://getcomposer.org/installer -o composer-setup.php

El siguiente comando instalará Composer:

sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer

Lo anterior descargará e instalará Composer como un binario para todo el sistema en el directorio /usr/local/bin.

Puede optar por configurar Composer solo para su usuario reemplazando la parte /usr/local/bin del comando con ~/user_

Una vez finalizada la instalación, puede ejecutar el siguiente comando para comprobar si la instalación se ha realizado correctamente.

composer

Salida de muestra: 

Instalación de perno

Ahora que se han instalado todos los paquetes necesarios, ahora podemos continuar con la instalación de Bolt.

Primero, nos movemos al directorio /var/www/ y descargamos la última versión de Bolt CMS desde GitHub con el siguiente comando:

cd /var/www/
sudo git clone https://github.com/bolt/bolt.git

Salida de muestra: 

Una vez descargado, debería ver un directorio llamado bolt con un solo archivo llamado "composer.json", que es el archivo de configuración del compositor para Bolt CMS.

Ahora nos movemos al directorio de pernos e instalamos Bolt desde allí:

cd bolt
sudo composer install

Este comando instalará todos los archivos fuente y dependencias de Bolt necesarios en /var/www/bolt usando el administrador de paquetes Composer.

Salida de muestra: 

El siguiente paso es ejecutar el siguiente comando para configurar el directorio de trabajo de Bolt:

sudo chown -R www-data:www-data /var/www/bolt
sudo chmod -R 755 /var/www/bolt

El comando anterior cambiará la propiedad de los archivos de Bolt a www-data del usuario de Nginx, para que pueda leer y escribir el archivo cuando se acceda a la URL de Bolt.

El siguiente paso es configurar el archivo de configuración de pernos:

sudo cp app/config/config.yml.dist app/config/config.yml

Accediendo a BoltWire CMS

Ahora deberíamos poder acceder a BoltWire CMS utilizando la siguiente URL desde un navegador en una computadora Linux o Windows:

http://localhost:8000/bolt o http://bolt.example.com/bolt

Debería obtener una página de inicio predeterminada de BoltWire CMS como la siguiente:

Complete toda la información requerida en este formulario, puede acceder a su panel de BoltWire como el siguiente:

Ahora hemos configurado con éxito un servidor Linux para Bolt Wire CMS.

Si tiene problemas cuando intenta acceder a su BoltWire CMS recién instalado. Aquí hay una lista de los errores comunes y sus posibles soluciones:

  • "Acceso denegado - error ". Esto significa que BoltWire CMS se está ejecutando pero no puede acceder a sus páginas desde el navegador, intente verificar su directorio de configuración de Nginx.
  • "No se puede cargar la biblioteca dinámica '/var/www/BoltWire/vendor/php72-zip/libphp7. 2.so " o "Error al ejecutar el script". Esto significa que el directorio BoltWire CMS no tiene los permisos necesarios para ejecutar y ejecutar el archivo PHP.
  • "Error al inicializar... No existe tal archivo o directorio ". Esto significa que BoltWire CMS no está instalado correctamente. Debe verificar si ha seguido el procedimiento correcto para la instalación de BoltWire CMS.
  • "Permiso denegado ". Esto significa que no tiene acceso adecuado al directorio /var/www/bolt o /var/www.
  • "Error grave:Clase 'PDO' no encontrada en... ". Esto significa que PHP no puede conectarse a la base de datos y es posible que deba verificar su configuración de PHP.
  • "Buscando... " o "Advertencia:argumento no válido proporcionado para foreach ()...". Esto significa que BoltWire CMS no puede encontrar lo que le dio. Por lo general, esto se debe a la ignorancia del nombre del blog y el slug o la ruta en su configuración .
  • "No se pudo crear el directorio... Índice no definido:datos vistos ". Esto significa que BoltWire CMS no puede crear su directorio en su servidor Nginx y es posible que deba verificar la configuración de PHP.
  • "Error de análisis:error de sintaxis, '=' inesperado en... en... ". Esto significa que BoltWire CMS no puede ejecutar su archivo o no puede leer uno de sus archivos. Esto puede suceder cuando ha utilizado una sintaxis incorrecta en su configuración.
  • "404 no encontrado nginx/1.14.0 (ubuntu) " Agregar un registro 'A' para bolt.example.com hacia su servidor debería ayudar.
  • "404 No encontrado" o "La URL solicitada... no se encontró en este servidor ". Esto significa que BoltWire CMS no pudo encontrar sus archivos. Es posible que deba verificar su configuración de BoltWire y asegurarse de haber especificado la ruta correcta en ella.

BoltWire está instalado pero no hay páginas o se muestra la página de inicio de sesión de BoltWire si BoltWire CMS está instalado, entonces Bolt buscará una plantilla de BoltWire predeterminada en la carpeta /var/www/bolt/_templates dentro del directorio de instalación de Bolt y si no es así encuentre cualquier archivo allí, Bolt utilizará un archivo index.php en el directorio de instalación de Bolt como página de inicio. Si eso tampoco funciona, es posible que algo más esté mal con su configuración de PHP o la configuración de Nginx.

Conclusión

BoltWire CMS es una gran pieza de software para ejecutar un blog o sitio web personal. Puede obtener más información sobre Bolt CMS en el sitio oficial de BoltWire CMS.

Con suerte, este artículo lo ayudará a aprender cómo instalar BoltWire en el servidor Ubuntu 20.04. Si te gusta este artículo, compártelo con tus amigos en Twitter o Facebook. Si tiene alguna pregunta, no dude en dejar un comentario a continuación.


Ubuntu
  1. Cómo instalar Seafile con Nginx en Ubuntu 20.04 LTS

  2. Cómo instalar Grav CMS con Nginx en Ubuntu 16.04

  3. Cómo instalar Seafile con Nginx en Ubuntu 18.04 LTS

  4. Cómo implementar Modsecurity con Nginx en Ubuntu 20.04 LTS

  5. Cómo instalar BoltWire CMS en Ubuntu 18.04 LTS

Cómo instalar Grav CMS con Nginx en Ubuntu 20.04

Cómo instalar phpMyAdmin con Nginx (LEMP) en Ubuntu 18.04 LTS

Cómo instalar Nginx con el módulo Ngx_Pagespeed en Ubuntu 16.04 LTS

Cómo instalar Joomla con Nginx en Ubuntu 18.04 LTS

Cómo instalar phpMyAdmin con Nginx en Ubuntu 20.04 LTS

Cómo instalar Bolt CMS en Ubuntu 20.04 LTS