Directus 6.4 CMS es un sistema de administración de contenido sin cabeza (CMS) potente y flexible, gratuito y de código abierto que proporciona a los desarrolladores una interfaz web simple e intuitiva para administrar el contenido de la base de datos con arquitecturas completamente personalizadas. Los CMS tradicionales se crean como plataformas cerradas específicamente para implementar y administrar rápidamente sitios web, generalmente sitios y blogs simples. Sin embargo, el contenido de hoy es consumido por una gama mucho más amplia de aplicaciones, incluidas plataformas web complejas, aplicaciones nativas, wearables, quioscos, dispositivos IoT y otros proyectos basados en datos. Directus 6.4 Headless CMS permite que el contenido se administre independientemente del lugar donde se utilizará. Al desacoplar y crear contenido independiente de la aplicación,
En este tutorial vamos a instalar Directus 6.4 CMS en un FreeBSD 11 FAMP VPS usando el servidor web Apache, PHP 7.1 y una base de datos MariaDB.
Prerrequisitos
- Una instancia de servidor Vultr FreeBSD 11 limpia con acceso SSH
Paso 1: Agregar un usuario de Sudo
Comenzaremos agregando un nuevo sudo
usuario.
Primero, inicie sesión en su servidor como root
:
ssh root@YOUR_VULTR_IP_ADDRESS
El sudo
comando no está instalado por defecto en la instancia del servidor Vultr FreeBSD 11, por lo que primero instalaremos sudo
:
pkg install sudo
Ahora agregue un nuevo usuario llamado user1
(o su nombre de usuario preferido):
adduser user1
El adduser
comando le pedirá muchos detalles para la cuenta de usuario, así que simplemente seleccione los valores predeterminados para la mayoría de ellos cuando tenga sentido hacerlo. Cuando se le pregunte si debe hacerlo Invite user1 into any other groups?
, debe ingresar wheel
para agregar user1
al wheel
grupo.
Ahora verifique el /etc/sudoers
archivo para asegurarse de que el sudoers
grupo esté habilitado:
visudo
Busque una sección como esta:
# %wheel ALL=(ALL) ALL
Esta línea nos dice que los usuarios que son miembros del wheel
grupo pueden usar el sudo
comando para obtener root
privilegios. Se comentará de forma predeterminada, por lo que deberá descomentarlo y luego guardar y salir del archivo.
Podemos verificar la user1
pertenencia al grupo con el groups
comando:
groups user1
Si user1
no es miembro del wheel
grupo, puede usar este comando para actualizar la user1
membresía del grupo:
pw group mod wheel -m user1
Ahora use el su
comando para cambiar a la nueva user1
cuenta de usuario sudo :
su - user1
El símbolo del sistema se actualizará para indicar que ahora ha iniciado sesión en la user1
cuenta. Puede verificar esto con el whoami
comando:
whoami
Ahora reinicie el sshd
servicio para que pueda iniciar sesión ssh
con la nueva cuenta de usuario de sudo no root que acaba de crear:
sudo /etc/rc.d/sshd restart
Salir de la user1
cuenta:
exit
Salga de la root
cuenta (que desconectará su ssh
sesión):
exit
Ahora puede ssh
ingresar a la instancia del servidor desde su host local utilizando la nueva user1
cuenta de usuario sudo no root :
ssh user1@YOUR_VULTR_IP_ADDRESS
Si desea ejecutar sudo sin tener que escribir una contraseña cada vez, abra el /etc/sudoers
archivo nuevamente, usando visudo
:
sudo visudo
Edite la sección para el wheel
grupo para que se vea así:
%wheel ALL=(ALL) NOPASSWD: ALL
Tenga en cuenta: Deshabilitar el requisito de contraseña para el usuario de sudo no es una práctica recomendada, pero se incluye aquí ya que puede hacer que la configuración del servidor sea mucho más conveniente y menos frustrante, especialmente durante las sesiones de administración de sistemas más largas. Si le preocupan las implicaciones de seguridad, siempre puede revertir el cambio de configuración al original después de finalizar sus tareas de administración.
Siempre que desee iniciar sesión en la root
cuenta de usuario desde la sudo
cuenta de usuario, puede usar uno de los siguientes comandos:
sudo -i
sudo su -
Puede salir de la root
cuenta y volver a su sudo
cuenta de usuario en cualquier momento simplemente escribiendo:
exit
Paso 2: Actualice el sistema FreeBSD 11
Antes de instalar cualquier paquete en la instancia del servidor FreeBSD, primero actualizaremos el sistema.
Asegúrese de haber iniciado sesión en el servidor utilizando un usuario de sudo no root y ejecute los siguientes comandos:
sudo freebsd-update fetch
sudo freebsd-update install
sudo pkg update
sudo pkg upgrade
Paso 3: Instalar el servidor web Apache
Instale el servidor web Apache:
sudo pkg install apache24
Ingrese y
cuando se le solicite.
Ahora use el sysrc
comando para permitir que el servicio Apache se ejecute automáticamente en el momento del arranque:
sudo sysrc apache24_enable=yes
El sysrc
comando actualiza el /etc/rc.conf
archivo de configuración, por lo que si desea verificar la actualización de la configuración manualmente, simplemente puede abrir el /etc/rc.conf
archivo con su editor de terminal favorito:
vi /etc/rc.conf
Ahora inicie el servicio Apache:
sudo service apache24 start
Puede verificar rápidamente que Apache se está ejecutando visitando la dirección IP o el dominio de la instancia del servidor en su navegador:
http://YOUR_VULTR_IP_ADDRESS/
Verá la página predeterminada de FreeBSD Apache mostrando el texto:
It works!
Verifique su archivo de configuración predeterminado de Apache para asegurarse de que la DocumentRoot
directiva apunte al directorio correcto:
sudo vi /usr/local/etc/apache24/httpd.conf
La DocumentRoot
opción de configuración se verá así:
DocumentRoot "/usr/local/www/apache24/data"
Ahora necesitamos habilitar el mod_rewrite
módulo Apache. Podemos hacer esto buscando el término en el archivo de configuración de Apache predeterminado mod_rewrite
.
Por defecto, el mod_rewrite
módulo Apache se comentará (lo que significa que está deshabilitado). La línea de configuración en una instancia limpia de Vultr FreeBSD 11 se verá así:
#LoadModule rewrite_module libexec/apache24/mod_rewrite.so
Simplemente elimine el símbolo hash para descomentar la línea y cargar el módulo. Esto, por supuesto, también se aplica a cualquier otro módulo Apache requerido:
LoadModule rewrite_module libexec/apache24/mod_rewrite.so
Ahora necesitamos editar la Directory
directiva Apache en el mismo archivo de configuración para que mod_rewrite
funcione correctamente con Directus CMS.
Busque la sección del archivo de configuración que comienza con <Directory "/usr/local/www/apache24/data">
y cambie AllowOverride none
a AllowOverride All
. El resultado final (con todos los comentarios eliminados) se verá así:
<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Ahora guarde y salga del archivo de configuración de Apache.
Reiniciaremos Apache al final de este tutorial, pero reiniciar Apache regularmente durante la instalación y configuración es ciertamente un buen hábito, así que hagámoslo ahora:
sudo service apache24 restart
Paso 4: Instalar PHP 7.1
Ahora podemos instalar PHP 7.1 junto con todos los módulos PHP necesarios requeridos por Directus CMS:
sudo pkg install php71 mod_php71 php71-gd php71-mbstring php71-mysqli php71-xml php71-curl php71-ctype php71-tokenizer php71-simplexml php71-dom php71-session php71-iconv php71-hash php71-json php71-fileinfo php71-pdo php71-pdo_mysql php71-zlib php71-openssl php71-zip php71-phar
FreeBSD 11 nos da la opción de usar un desarrollo php.ini
o una producción php.ini
. Como vamos a instalar Directus en un servidor web público, usaremos la versión de producción. Primero, retrocede php.ini-production
:
sudo cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini-production.backup
Luego enlace suave php.ini-production
a php.ini
:
sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini
Necesitamos configurar Apache para que realmente use PHP, así que creemos un nuevo archivo llamado php.conf
en el Includes
directorio Apache :
sudo vi /usr/local/etc/apache24/Includes/php.conf
Ingrese el siguiente texto en el archivo recién creado:
<IfModule dir_module>
DirectoryIndex index.php index.html
<FilesMatch "\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
</IfModule>
Guardar y salir del archivo.
Ahora reiniciemos Apache para que pueda volver a cargar los cambios de configuración:
sudo service apache24 restart
Paso 5: Instalar el servidor MariaDB (MySQL)
FreeBSD 11 usa de manera predeterminada el servidor de base de datos MariaDB, que es un reemplazo mejorado, de código abierto, desarrollado por la comunidad y directo para el servidor MySQL.
Instale la última versión del servidor de base de datos MariaDB:
sudo pkg install mariadb102-server mariadb102-client
Inicie y permita que el servidor MariaDB se ejecute automáticamente en el momento del arranque:
sudo sysrc mysql_enable="yes"
sudo service mysql-server start
Asegure la instalación de su servidor MariaDB:
sudo mysql_secure_installation
Cuando se le solicite que cree un root
usuario MariaDB / MySQL , seleccione "Y" (para sí) y luego ingrese una root
contraseña segura . Simplemente responda "S" a todas las otras preguntas de sí / no, ya que las sugerencias predeterminadas son las opciones más seguras.
Paso 6: Crear una base de datos para Directus CMS
Inicie sesión en el shell MariaDB como root
usuario de MariaDB ejecutando el siguiente comando:
sudo mysql -u root -p
Para acceder al símbolo del sistema de MariaDB, simplemente ingrese la root
contraseña de MariaDB cuando se le solicite.
Ejecute las siguientes consultas para crear una base de datos MariaDB y un usuario de base de datos para Directus CMS:
CREATE DATABASE directus_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'directus_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON directus_db.* TO 'directus_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Puede reemplazar el nombre de la base de datos directus_db
y el nombre de usuario directus_user
con algo más de su agrado, si lo prefiere. Además, asegúrese de reemplazar "UltraSecurePassword" con una contraseña realmente segura.
Paso 7: Instalar archivos Directus CMS
Cambie su directorio de trabajo actual al directorio web predeterminado:
cd /usr/local/www/apache24/data
El directorio de trabajo actual será ahora: /usr/local/www/apache24/data
. Puede verificar esto con el pwd
comando (imprimir directorio de trabajo):
pwd
Ahora use wget
para descargar el paquete de instalación de Directus CMS:
sudo wget https://github.com/directus/directus/releases/download/6.4.4/directus-build-6.4.4-20171120114156.zip
Tenga en cuenta: definitivamente debe verificar la versión más reciente visitando la página de descarga de Directus CMS .
Enumere el directorio actual para verificar que ha descargado correctamente el archivo:
ls -la
Eliminar index.html
:
sudo rm index.html
Ahora descomprima el archivo zip:
sudo unzip directus-build-6.4.4-20171120114156.zip
Mueva todos los archivos de instalación al directorio raíz web:
sudo mv directus-build-6.4.4-20171120114156/* /usr/local/www/apache24/data
Cambie la propiedad de los archivos web para evitar problemas de permisos:
sudo chown -R www:www * ./
Reinicie Apache nuevamente.
sudo service apache24 restart
Ahora estamos listos para pasar al paso final.
Paso 8: Complete la instalación de Directus CMS
Es hora de visitar la dirección IP de la instancia de su servidor en su navegador, o si ya ha configurado la configuración de DNS de Vultr (y le ha dado tiempo suficiente para propagarse), simplemente puede visitar su dominio.
Para acceder a la página de instalación de Directus CMS, ingrese su dirección IP de instancia de Vultr en la barra de direcciones de su navegador, seguido de /installation/index.php
:
http://YOUR_VULTR_IP_ADDRESS/installation/index.php
La mayoría de las opciones de instalación se explican por sí mismas, pero aquí hay algunos consejos para ayudarlo:
-
Seleccione su idioma y haga clic en el Next
botón para continuar.
-
Ingrese los Project Name
detalles de inicio de sesión apropiados y de administrador como se muestra a continuación:
PROJECT NAME: <project name>
ADMIN EMAIL: <admin email>
ADMIN PASSWORD: <admin password>
Haz clic Next
para continuar.
-
Ahora ingrese los siguientes valores de la base de datos:
DATABASE TYPE: MySQL/Percona
HOST: localhost
PORT: 3306
USER: directus_user
PASSWORD: UltraSecurePassword
DATABASE NAME: directus_db
INITIAL SCHEMA: None Clean Database
Haz clic Next
para continuar.
-
Se le presentará una página de verificación previa a la instalación que muestra las opciones que seleccionó y cualquier problema que pueda haber encontrado el instalador. Si ve un error con el mod_rewrite
módulo que se muestra como desinstalado o deshabilitado, cuando realmente lo haya instalado y habilitado, simplemente puede ignorar la advertencia ya que todo funcionará bien.
Una vez que haya solucionado cualquier problema importante y haya verificado que todo funciona correctamente, simplemente haga clic en Install
para finalizar su instalación.
Una vez que se complete la instalación, se lo redirigirá a la página de inicio de sesión de administrador. Si no es redirigido, puede ingresar la dirección de inicio de sesión de administrador manualmente:
http://YOUR_VULTR_IP_ADDRESS/login.php
Por razones de seguridad, asegúrese de eliminar el /installation/
directorio del directorio webroot:
sudo rm -rf ./installation/
Ahora está listo para comenzar a agregar su contenido y configurar su CMS sin cabeza para que funcione con sus diversas aplicaciones. Asegúrese de consultar la excelente documentación de Directus CMS para obtener más información sobre cómo configurar Directus CMS y vincularlo a sus diferentes aplicaciones y marcos.