Jump to content

Drupal (Português)

From ArchWiki
Status de tradução: Este artigo é uma tradução de Drupal. Data da última tradução: 2026-10-02. Você pode ajudar a sincronizar a tradução, se houver alterações na versão em inglês.

"Drupal é um sistema e framework de gerenciamento de conteúdo (content management system/framework) livre e de código aberto escrito em PHP e distribuído sob a GNU General Public License." - Wikipédia

Esta página descreve como instalar o Drupal e configurar o Apache HTTP Server, MySQL ou PostgreSQL, e Postfix para funcionar com ele. Assumiremos aqui que você tenha algum tipo de servidor LAMP (Linux, Apache, MySQL, PHP), LAPP (Linux, Apache, PostgreSQL, PHP) ou LASP (Linux, Apache, SQLite, PHP) já pronto para uso.

Instalação

Instale o pacote drupal.

Configuração

PHP

Edite /etc/php/php.ini:

  • Para ativar o suporte à manipulação de imagens, descomente a linha extension=gd

Para suporte a bancos de dados ative a extensão PDO para o seu banco de dados:

  • Para ativar suporte para SQLite, descomente a linha extension=pdo_sqlite
  • Para ativar suporte para MySQL, descomente a linha extension=pdo_mysql
  • Para ativar suporte para PostgreSQL, descomente a linha extension=pdo_pgsql

Apache falhará em iniciar com um erro encontrando php_admin_value. As instruções abaixo consertam isso:

Instale o pacote php-apache.

Em /etc/httpd/conf/httpd.conf, comente a linha:

#LoadModule mpm_event_module modules/mod_mpm_event.so

e descomente a linha:

LoadModule mpm_prefork_module modules/mod_mpm_prefork.so

Ponha isto no final da lista LoadModule:

LoadModule php7_module modules/libphp7.so
AddHandler php7-script .php

Ponha isto no final da lista Include:

Include conf/extra/php7_module.conf

Reinicie o httpd.service usando systemd.

Apache falhará em iniciar com um erro encontrando open_basedir. As instruções abaixo consertam isso:

Em /etc/php/php.ini, descomente e ponha um sufixo em open_basedir para que se pareça com isto:

open_basedir = /etc/webapps

Apache

Copie o arquivo de configuração Apache de exemplo:

# cp /etc/webapps/drupal/apache.example.conf /etc/httpd/conf/extra/drupal.conf

E inclua-o no final de /etc/httpd/conf/httpd.conf:

Include conf/extra/drupal.conf

Em /etc/httpd/conf/httpd.conf, descomente também a linha LoadModule rewrite_module modules/mod_rewrite.so.

Drupal

Edite /usr/share/webapps/drupal/.htaccess e substitua Require all denied por Require all granted.

Finalmente, reinicie o Apache (httpd.service). Você pode agora acessar a instalação Drupal em http://localhost/drupal .

Ferramentas de linha de comando

Drush

Drush é um shell de linha de comando e interface de scripting Unix para o Drupal. O Drush por si só vem com diversos comandos úteis para interagir com código como módulos/temas/perfis. De modo similar, ele executa update.php, executa queries SQL e migrações de bancos de dados, e vem com utilitários gerais como executar cron ou limpar o cache. O Drush pode ser estendido usando arquivos de comando de terceiros. Ele pode ser instalado com o pacote drush-launcherAUR.

Drupalconsole

Drupalconsole é uma ferramenta CLI para gerar código redundante (boilerplate), interagir e depurar o Drupal 8. Ele pode ser instalado com o pacote drupalconsoleAUR.

PHP-Codesniffer-Drupal

PHP-Codesniffer-Drupal compara o seu código Drupal com os padrões do projeto e outras melhores práticas. Pode ser instalado com o pacote php-codesniffer-drupalAUR.

Dicas e truques

Enviando emails

O Drupal precisa de um MTA compatível com Sendmail, como Sendmail, Postfix ou Exim caso você queira enviar emails do seu setup local.

De modo alternativo, existem múltiplas soluções para enviar emails via servidores de email externos por meio de SMTP ou outros meios como PHPMailer. Use a página de pesquisa para encontrar mais possibilidades.

Agendamento com Cron

O Drupal recomenda rodar tarefas cron a cada hora. Cron pode ser executado do browser visitando http://localhost/drupal/cron. Também é possível rodar o cron via script copiando o arquivo apropriado da pasta "scripts" em /etc/cron.hourly e tornando-o executável.

Progresso de upload não ativo

Após uma instalação bem sucedida, você pode ver a seguinte mensagem no Status Report:

Your server is capable of displaying file upload progress, but does not have the required libraries. It is recommended to install the PECL uploadprogress library (preferred) or to install APC.

Primeiro, instale o pacote php-pearAUR. Em seguida, use o comando pecl para automaticamente baixar, compilar e instalar a biblioteca:

# pecl install uploadprogress

Finalmente, adicione a /etc/php/php.ini

extension=uploadprogress

e reinicie o Apache.

Veja também