Instalación CMS · 6 min read · Nov 09, 2025

Cómo instalar Pagekit CMS en Debian 9

Pagekit es un CMS moderno, intuitivo, modular y flexible de código abierto (licencia MIT) construido con componentes de Symfony y Vue.js. Te proporciona las herramientas para crear sitios web hermosos. Tiene un rico ecosistema de temas y plugins.

En este tutorial, te guiaremos a través del proceso de instalación de Pagekit CMS en un sistema operativo Debian 9 (stretch) utilizando NGINX como servidor web, MariaDB como servidor de base de datos, y opcionalmente puedes asegurar la capa de transporte utilizando el cliente acme.sh y la autoridad de certificación Let’s Encrypt para agregar soporte SSL.

Requisitos

Para instalar Pagekit, asegúrate de que tu servidor cumpla con los siguientes requisitos:

  • Versión de Apache 2.2 o superior o servidor web NGINX.
  • Versión de MySQL 5.1 o superior o SQLite 3.
  • Versión de PHP 5.5.9 o superior.
  • Extensiones de PHP requeridas: JSON, Session, ctype, Tokenizer, SimpleXML, DOM, mbstring, PCRE 8.0+, ZIP y PDO con controladores de MySQL o SQLite.
  • Extensiones de PHP opcionales: cURL, iconv y XML Parser, así como APC o XCache para almacenamiento en caché.

Prerrequisitos

  • Un sistema que ejecute Debian 9 (stretch).
  • Un usuario no root con privilegios sudo.

Pasos iniciales

Verifica 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 asegura que tengas las últimas actualizaciones y correcciones de seguridad para 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 de PHP necesarias

La plataforma Pagekit CMS requiere PHP versión 7.0 o superior. Por defecto, Debian 9 tiene PHP versión 7.0 en sus repositorios de software predeterminados, lo cual es adecuado para Pagekit.

Descarga e instala PHP 7.0 y las extensiones de PHP requeridas:

sudo apt install -y php7.0 php7.0-cli php7.0-fpm php7.0-common php7.0-mbstring php7.0-zip php7.0-mysql php7.0-sqlite3 php7.0-curl php7.0-xml

Para mostrar los módulos compilados en PHP, puedes ejecutar:

php -m  
  
ctype  
curl  
exif  
fileinfo  
. . .  
. . .

Verifica la versión de PHP:

php --version  
# PHP 7.0.33-0+deb9u1 (cli) (built: Dec 7 2018 11:36:49) ( NTS )  
# Copyright (c) 1997-2017 The PHP Group  
# Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies  
#     with Zend OPcache v7.0.33-0+deb9u1, Copyright (c) 1999-2017, by Zend Technologies

El servicio PHP-FPM se inicia automáticamente y se habilita al reiniciar el sistema Debian 9, por lo que no es necesario iniciarlo y habilitarlo manualmente. Podemos pasar al siguiente paso, que es la instalación y configuración de la base de datos.

Paso 2 - Instalar MariaDB y crear una base de datos para Pagekit

Pagekit CMS admite bases de datos MySQL, MariaDB y SQLite. El equipo de Debian reemplazó MySQL con MariaDB como la base de datos predeterminada desde Debian 9 (stretch), así que en este tutorial, utilizaremos MariaDB como el servidor de base de datos. Si deseas instalar el MySQL original, puedes agregar y utilizar el repositorio oficial de MySQL mantenido por Oracle.

Instala el servidor de base de datos MariaDB versión 10.2 desde el repositorio oficial de MariaDB:

sudo apt install -y software-properties-common dirmngr apt-transport-https  
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xF1656F24C74CD1D8  
sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] https://mirrors.nxthost.com/mariadb/repo/10.2/debian stretch main'  
sudo apt update  
sudo apt install -y mariadb-server  

NOTA: Se te pedirá la contraseña del usuario root. Ingresa una contraseña fuerte y continúa.

Verifica la versión de MariaDB:

mysql --version  
# mysql  Ver 15.1 Distrib 10.2.22-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

Ejecuta el script mysql_secure_installation para mejorar la seguridad de MariaDB y establecer la contraseña para el usuario root de MariaDB:

sudo mysql_secure_installation

Responde a cada una de las preguntas:

Enter current password for root (enter for none): Presiona Enter  
Set root password? [Y/n] Y  
New password: tu_contraseña_segura  
Re-enter new password: tu_contraseña_segura  
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

Inicia sesión en MariaDB como el usuario root:

sudo mysql -u root -p  
# Ingresa la contraseña

Crea una base de datos de MariaDB y un usuario que utilizarás para tu instalación de Pagekit, y recuerda las credenciales:

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

Sal de la consola de MariaDB:

quit

Paso 3 - Instalar el cliente Acme.sh y obtener un certificado de Let’s Encrypt (opcional)

Asegurar tu sitio web con HTTPS no es necesario, pero es una buena práctica asegurar el tráfico de tu sitio. Para obtener un certificado SSL de Let’s Encrypt utilizaremos el cliente Acme.sh. Acme.sh es un software de shell UNIX puro para obtener certificados SSL de Let’s Encrypt con cero dependencias.

Descarga e instala acme.sh:

sudo su - root  
git clone https://github.com/Neilpang/acme.sh.git  
cd acme.sh   
./acme.sh --install --accountemail [email protected]  
source ~/.bashrc  
cd ~

Verifica la versión de acme.sh:

acme.sh --version  
# v2.8.1

Obtén certificados RSA y ECC/ECDSA para tu dominio/nombre de host:

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

Si deseas certificados falsos para pruebas, puedes agregar la bandera --staging a los comandos anteriores.

Para listar tus certificados emitidos, puedes ejecutar:

acme.sh --list

Crea un directorio para almacenar tus certificados. Usaremos el directorio /etc/letsencrypt.

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

Instala/copia los certificados en el directorio /etc/letsencrypt.

# 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"

Después de ejecutar los comandos anteriores, tus certificados y claves estarán en:

  • Para RSA: directorio /etc/letsencrypt /example.com.
  • Para ECC/ECDSA: directorio /etc/letsencrypt /example.com_ecc.

Todos los certificados se renovarán automáticamente cada 60 días.

Después de obtener los certificados, sal del usuario root y vuelve al usuario sudo normal:

exit

Paso 4 - Instalar NGINX y configurar NGINX para Pagekit

Instala el servidor web NGINX:

sudo apt install -y nginx

Verifica la versión de NGINX:

sudo nginx -v  
# nginx version: nginx/1.10.3

Configura NGINX para Pagekit ejecutando:

sudo vim /etc/nginx/sites-available/pagekit.conf  

Y llena el archivo con la siguiente configuración:

server {  
    listen [::]:443 ssl http2;  
    listen 443 ssl http2;
    listen [::]:80;
    listen 80;
    
    server_name example.com;
    
    index index.php index.html;
    root /var/www/pagekit;  

    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;  

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }  
  
    location ~ \.php$ {  
        include snippets/fastcgi-php.conf;  
        fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;  
    }
    
}

Activa la nueva configuración pagekit.conf vinculando el archivo al directorio sites-enabled.

sudo ln -s /etc/nginx/sites-available/pagekit.conf /etc/nginx/sites-enabled

Verifica la configuración de NGINX en busca de errores de sintaxis:

sudo nginx -t

Recarga el servicio NGINX:

sudo systemctl reload nginx.service

Paso 5 - Descargar e instalar Pagekit CMS

Crea un directorio raíz de documentos donde debería residir Pagekit:

sudo mkdir -p /var/www/pagekit  

Cambia la propiedad del directorio /var/www/pagekit a [tu_usuario]:

sudo chown -R [tu_usuario]:[tu_usuario] /var/www/pagekit

Navega al directorio raíz de documentos:

cd /var/www/pagekit

Descarga la última versión estable de Pagekit CMS a través de wget:

wget https://github.com/pagekit/pagekit/releases/download/1.0.16/pagekit-1.0.16.zip

Descomprime el contenido de Pagekit CMS y elimina el archivo .zip descargado.

unzip pagekit-1.0.16.zip  
rm pagekit-1.0.16.zip

Cambia la propiedad del directorio /var/www/pagekit a www-data.

sudo chown -R www-data:www-data /var/www/pagekit

Paso 6 - Completar la configuración de Pagekit

Abre tu sitio en un navegador web y deberías ver la siguiente página:

Instalador web de Pagekit

Haz clic en el ícono de la flecha derecha para continuar con la instalación. Elige tu idioma y haz clic en el botón

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.