Cómo instalar Anchor CMS en Debian 9
Anchor es un sistema de blog super sencillo y ligero escrito en PHP. El código fuente de Anchor está alojado en GitHub. En este tutorial, recorreremos el proceso de instalación de Anchor CMS en un sistema operativo Debian 9 (stretch) utilizando NGINX como servidor web y MariaDB como servidor de base de datos.
Requisitos
Asegúrate de que tu servidor cumple los siguientes requisitos
- MySQL 5.6 o superior (se recomienda MySQL 5.7)
- PHP 7.1 o superior con las siguientes extensiones PHP: (curl, mcrypt, gd, mbstring, pdo_mysql o pdo_sqlite)
- Software de servidor web Apache o NGINX instalado. En este tutorial, utilizaremos NGINX.
Requisitos previos
- Sistema operativo Debian 9.
- Un usuario no root con privilegios sudo.
Pasos iniciales
Comprueba la versión de tu sistema Debian:
lsb_release -ds # Debian GNU/Linux 9.7 (stretch)
Configura la zona horaria:
dpkg-reconfigure tzdata
Actualiza los paquetes de tu sistema operativo (software). Este es un primer paso importante porque garantiza que dispones de las últimas actualizaciones y correcciones de seguridad de los paquetes de software predeterminados de tu sistema operativo:
apt update && apt upgrade -y
Instala algunos paquetes esenciales que son necesarios para la administración básica del sistema operativo Debian:
apt install -y curl wget vim git sudo unzip socat bash-completion dirmngr apt-transport-https
Paso 1 – Instalar PHP y las extensiones PHP necesarias
Anchor CMS requiere PHP versión 7.1 o superior. Debian tiene la versión 7 de PHP en el repositorio por defecto, por lo que tendrás que utilizar el repositorio de terceros para instalar una versión más reciente.
sudo apt-get install apt-transport-https lsb-release ca-certificates sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list sudo apt update
Instala PHP, así como las extensiones PHP necesarias:
sudo apt install -y php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-mbstring php7.2-curl php7.2-mysql php7.2-sqlite3 php7.2-gd php7.2-xml
Comprueba la versión de PHP:
php --version
# PHP 7.2.16-1+0~20190307202415.17+stretch~1.gbpa7be82 (cli) (built: Mar 7 2019 20:24:15) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
# with Zend OPcache v7.2.16-1+0~20190307202415.17+stretch~1.gbpa7be82, Copyright (c) 1999-2018, by Zend Technologies
Paso 2 – Instalar MariaDB y crear una base de datos para Anchor CMS
Anchor admite bases de datos MySQL/MariaDB y SQLite. El repositorio Debian por defecto contiene una versión no compatible de MariaDB. Por ello, utilizaremos el repositorio oficial de MariaDB que contiene una versión más reciente de MariaDB.
Instala MariaDB:
sudo apt install -y mariadb-server
Comprueba la versión de MariaDB:
mysql --version # mysql Ver 15.1 Distrib 10.1.37-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
Ejecuta el script mysql_secure installation
para mejorar la seguridad de MariaDB y establece la contraseña para el usuario de MariaDB root
:
sudo mysql_secure_installation
Responde a todas las preguntas como se muestra a continuación:
Enter current password for root (enter for none):
Set root password? [Y/n]: Y
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
Entra en el shell de MariaDB como usuario root:
mysql -u root -p # Enter password
Crea una base de datos MariaDB y un usuario que utilizarás para la instalación de Anchor CMS, y recuerda las credenciales:
CREATE DATABASE dbname; GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password'; FLUSH PRIVILEGES;
Sal del intérprete de comandos MariaDB:
quit
Paso 3 – Instalar y configurar NGINX
Instala el servidor web NGINX:
sudo apt install -y nginx
Comprueba la versión de NGINX:
nginx -v # nginx version: nginx/1.10.3
Ejecuta sudo vim /etc/nginx/sites-available/anchor.conf
y rellena el archivo con la siguiente configuración:
server { listen 80; server_name example.com; root /var/www/anchor; index index.php index.html; location / { try_files $uri $uri/ /index.php; } location ~ \.php$ { include snippets/fastcgi-php.conf; include fastcgi_params; fastcgi_pass unix:/var/run/php/php7.2-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } }
Activa la nueva configuración de anchor.conf
vinculando el archivo al directorio sites-enabled
.
sudo ln -s /etc/nginx/sites-available/anchor.conf /etc/nginx/sites-enabled
CompruebaNGINX en busca de errores de sintaxis:
sudo nginx -t
RecargaNGINX servicio:
sudo systemctl reload nginx.service
Paso 4 – Descargar e instalar Composer
Para instalar correctamente Anchor, necesitaremos instalar Composer, el gestor de dependencias para aplicaciones PHP:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" php -r "if (hash_file('SHA384', 'composer-setup.php') === '48e3236262b34d30969dca3c37281b3b4bbe3221bda826ac6a9a62d6444cdb0dcd0615698a5cbe587c3f0fe57a54d8f5') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" php composer-setup.php php -r "unlink('composer-setup.php');" sudo mv composer.phar /usr/local/bin/composer
Comprueba la versión de Composer.
composer --version # Composer version 1.8.4 2019-02-11 10:52:10
Paso 5 – Descargar e instalar Anchor CMS
Crea un directorio raíz de documentos:
sudo mkdir -p /var/www/anchor
Cambia la propiedad del directorio /var/www/limesurvey
a [jour_user].:
sudo chown -R [your_user]:[your_user] /var/www/anchor
Navega hasta la raíz del documento:
cd /var/www/anchor
Descarga la última versión de Anchor CMS utilizando Composer:
composer create-project anchorcms/anchor-cms .
Cambia la propiedad del directorio /var/www/anchor
a www-data:
sudo chown -R www-data:www-data /var/www/anchor
Crea el directorio/var/lib/php/session
y establece la propiedad anginx:
sudo mkdir -p /var/lib/php/session && sudo chown -R www-data:www-data /var/lib/php
Paso 6 – Completa la configuración de Anchor CMS
Abre tu navegador web y escribe la URL «http://example.com». Serás redirigido a la siguiente página:
Haz clic en el botón«Ejecutar el instalador», para iniciar el instalador web de Anchor CMS. Después, debería aparecer la página de idioma y zona horaria:
Selecciona la configuración que desees y haz clic en el botón «Paso siguiente » para pasar a la página de configuración de la base de datos:
Introduce los detalles de tu base de datos y haz clic en el botón« Paso siguiente» para pasar a la página de configuración de los metadatos del sitio:
Aquí puedes establecer el nombre o la descripción del sitio, o dejar los valores predeterminados y cambiarlos más tarde a través de la interfaz de Anchor backend. Haz clic en el botón« Paso siguiente» para el siguiente paso, que es configurar tu primera cuenta:
Una vez configurada tu primera cuenta, haz clic en el botón «Completar » para finalizar el proceso de instalación.
Una vez finalizada la instalación, asegúrate de eliminar la carpeta install
por motivos de seguridad.
sudo rm -rf /var/www/anchor/install