Instalação CMS · 7 min read · Nov 09, 2025

Como Instalar o Pagekit CMS no Debian 9

Pagekit é um CMS moderno, intuitivo, modular e flexível de código aberto (licença MIT) construído com componentes Symfony e Vue.js. Ele fornece as ferramentas para criar sites bonitos. Possui um rico ecossistema de temas e plugins.

Neste tutorial, vamos guiá-lo pelo processo de instalação do Pagekit CMS em um sistema operacional Debian 9 (stretch) usando o NGINX como servidor web, MariaDB como servidor de banco de dados e, opcionalmente, você pode proteger a camada de transporte usando o cliente acme.sh e a autoridade certificadora Let’s Encrypt para adicionar suporte SSL.

Requisitos

Para instalar o Pagekit, certifique-se de que seu servidor atenda aos seguintes requisitos:

  • Versão do Apache 2.2 ou superior ou servidor web NGINX.
  • Versão do MySQL 5.1 ou superior ou SQLite 3.
  • Versão do PHP 5.5.9 ou superior.
  • Extensões PHP necessárias: JSON, Session, ctype, Tokenizer, SimpleXML, DOM, mbstring, PCRE 8.0+, ZIP e PDO com drivers MySQL ou SQLite.
  • Extensões PHP opcionais: cURL, iconv e XML Parser, bem como APC ou XCache para cache.

Pré-requisitos

  • Um sistema executando Debian 9 (stretch).
  • Um usuário não-root com privilégios sudo.

Passos iniciais

Verifique a versão do seu sistema Debian:

lsb_release -ds  
# Debian GNU/Linux 9.7 (stretch)

Configure o fuso horário:

dpkg-reconfigure tzdata

Atualize os pacotes do seu sistema operacional (software). Este é um primeiro passo importante porque garante que você tenha as últimas atualizações e correções de segurança para os pacotes de software padrão do seu sistema operacional:

apt update && apt upgrade -y

Instale alguns pacotes essenciais que são necessários para a administração básica do sistema operacional Debian:

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

Passo 1 - Instalar PHP e as extensões PHP necessárias

A plataforma Pagekit CMS requer a versão do PHP 7.0 ou superior. Por padrão, o Debian 9 possui a versão do PHP 7.0 em seus repositórios de software padrão, o que é adequado para o CMS de Outubro.

Baixe e instale o PHP 7.0 e as extensões PHP necessárias:

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 os módulos compilados no PHP, você pode executar:

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

Verifique a versão do 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

O serviço PHP-FPM é iniciado automaticamente e habilitado na inicialização do sistema Debian 9, portanto, não há necessidade de iniciá-lo e habilitá-lo manualmente. Podemos passar para o próximo passo, que é a instalação e configuração do banco de dados.

Passo 2 - Instalar o MariaDB e criar um banco de dados para o Pagekit

O Pagekit CMS suporta bancos de dados MySQL, MariaDB e SQLite. A equipe do Debian substituiu o MySQL pelo MariaDB como o banco de dados padrão a partir do Debian 9 (stretch), então neste tutorial, usaremos o MariaDB como o servidor de banco de dados. Se você quiser instalar o MySQL original, pode adicionar e usar o repositório oficial do MySQL mantido pela Oracle.

Instale o servidor de banco de dados MariaDB versão 10.2 do repositório oficial do 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: Você será solicitado a inserir a senha do usuário root. Insira uma senha forte e continue.

Verifique a versão do MariaDB:

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

Execute o script mysql_secure_installation para melhorar a segurança do MariaDB e definir a senha para o usuário root do MariaDB:

sudo mysql_secure_installation

Responda a cada uma das perguntas:

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

Faça login no MariaDB como usuário root:

sudo mysql -u root -p  
# Enter password

Crie um banco de dados MariaDB e um usuário que você usará para sua instalação do Pagekit, e lembre-se das credenciais:

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

Saia do shell do MariaDB:

quit

Passo 3 - Instalar o cliente Acme.sh e obter o certificado Let’s Encrypt (opcional)

Proteger seu site com HTTPS não é necessário, mas é uma boa prática proteger o tráfego do seu site. Para obter um certificado SSL do Let’s Encrypt, usaremos o cliente Acme.sh. Acme.sh é um software de shell UNIX puro para obter certificados SSL do Let’s Encrypt com zero dependências.

Baixe e instale o 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 ~

Verifique a versão do acme.sh:

acme.sh --version  
# v2.8.1

Obtenha certificados RSA e ECC/ECDSA para seu domínio/nome do host:

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

Se você quiser certificados falsos para teste, pode adicionar a flag --staging aos comandos acima.

Para listar seus certificados emitidos, você pode executar:

acme.sh --list

Crie um diretório para armazenar seus certificados. Usaremos o diretório /etc/letsencrypt.

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

Instale/copie os certificados para o diretório /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"

Após executar os comandos acima, seus certificados e chaves estarão em:

  • Para RSA: diretório /etc/letsencrypt /example.com.
  • Para ECC/ECDSA: diretório /etc/letsencrypt /example.com_ecc.

Todos os certificados serão renovados automaticamente a cada 60 dias.

Após obter os certificados, saia do usuário root e volte ao usuário sudo normal:

exit

Passo 4 - Instalar o NGINX e configurar o NGINX para o Pagekit

Instale o servidor web NGINX:

sudo apt install -y nginx

Verifique a versão do NGINX:

sudo nginx -v  
# nginx version: nginx/1.10.3

Configure o NGINX para o Pagekit executando:

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

E preencha o arquivo com a seguinte configuração:

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;  
    }
    
}

Ative a nova configuração pagekit.conf vinculando o arquivo ao diretório sites-enabled.

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

Verifique a configuração do NGINX em busca de erros de sintaxe:

sudo nginx -t

Recarregue o serviço NGINX:

sudo systemctl reload nginx.service

Passo 5 - Baixar e instalar o Pagekit CMS

Crie um diretório raiz de documentos onde o Pagekit deve residir:

sudo mkdir -p /var/www/pagekit  

Altere a propriedade do diretório /var/www/pagekit para [seu_usuario]:

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

Navegue até a raiz do documento:

cd /var/www/pagekit

Baixe a versão estável mais recente do Pagekit CMS via wget:

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

Descompacte o conteúdo do Pagekit CMS e remova o arquivo .zip baixado.

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

Altere a propriedade do diretório /var/www/pagekit para www-data.

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

Passo 6 - Completar a configuração do Pagekit

Abra seu site em um navegador web e você deve ver a seguinte página:

Instalador web do Pagekit

Clique no ícone da seta para a direita para prosseguir com a instalação. Escolha seu idioma e clique no botão “Próximo”:

Escolher idioma

Em seguida, escolha seu banco de dados, seja SQLite ou MySQL, preencha os campos obrigatórios e clique no botão “Próximo”:

Conectar ao banco de dados

Depois disso, configure seu site inserindo o Título do Site e criando uma conta de usuário administrador:

Configurar site

E é isso. Você será redirecionado para a página de login do Pagekit. Forneça seu nome de usuário e senha para fazer login no painel do Pagekit.

Faça login na área administrativa do pagekit

É isso. Se você ficar preso, confira a documentação oficial do Pagekit.

Links

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.