O ProcessWire CMS 3.0 é um sistema de gerenciamento de conteúdo (CMS) simples, flexível e poderoso, gratuito e de código aberto. O ProcessWire CMS 3.0 apresenta uma API de estilo jQuery fácil de usar, arquitetura de plug-in totalmente modular e um sistema de templates flexível e poderoso que oferece uma experiência de usuário igualmente satisfatória para designers, desenvolvedores e usuários finais.
Neste tutorial vamos instalar o ProcessWire CMS 3.0 em um VPS de 9 LAMPs Debian usando o servidor web Apache, PHP 7.1 e um banco de dados MariaDB.
Pré-requisitos
- Uma instância limpa do servidor Site & Site Debian 9 com acesso SSH
Etapa 1: adicionar um usuário do Sudo
Vamos começar adicionando um novo sudo
usuário.
Primeiro, entre no seu servidor como root
:
ssh [email protected]_VULTR_IP_ADDRESS
O sudo
comando não é instalado por padrão na instância do servidor Site & Site Debain 9, então vamos instalar primeiro sudo
:
apt-get -y install sudo
Agora adicione um novo usuário chamado user1
(ou seu nome de usuário preferido):
adduser user1
Quando solicitado, insira uma senha segura e memorável. Você também será solicitado para o seu “Nome Completo” e alguns outros detalhes, mas você pode simplesmente deixá-los em branco pressionando Enter
.
Agora, verifique o /etc/sudoers
arquivo para certificar-se de que o sudoers
grupo esteja ativado:
visudo
Procure por uma seção como esta:
%sudo ALL=(ALL:ALL) ALL
Esta linha nos diz que os usuários que são membros do sudo
grupo podem usar o sudo
comando para obter root
privilégios. Deve ser descomentado por padrão, então você pode simplesmente sair do arquivo.
Em seguida, precisamos adicionar user1
ao sudo
grupo:
usermod -aG sudo user1
Podemos verificar a user1
associação ao grupo e verificar se o usermod
comando funcionou com o groups
comando:
groups user1
Agora use o su
comando para mudar para a nova user1
conta de usuário do sudo :
su - user1
O prompt de comando será atualizado para indicar que você está logado na user1
conta. Você pode verificar isso com o whoami
comando:
whoami
Agora, reinicie o sshd
serviço para que você possa efetuar login ssh
com a nova conta de usuário sudo não-raiz que você acabou de criar:
sudo systemctl restart sshd
Saia da user1
conta:
exit
Saia da root
conta (que desconectará sua ssh
sessão):
exit
Agora você pode ssh
entrar na instância do servidor do seu host local usando a nova user1
conta de usuário sudo não raiz :
ssh [email protected]_VULTR_IP_ADDRESS
Se você deseja executar sudo
sem ter que digitar uma senha toda vez, abra o /etc/sudoers
arquivo novamente, usando visudo
:
sudo visudo
Edite a seção do sudo
grupo para que fique assim:
%sudo ALL=(ALL) NOPASSWD: ALL
Por favor note: Desabilitar o requisito de senha para o usuário sudo não é uma prática recomendada, mas está incluída aqui, pois pode tornar a configuração do servidor muito mais conveniente e menos frustrante, especialmente durante sessões de administração de sistemas mais longas. Se você estiver preocupado com as implicações de segurança, sempre poderá reverter a alteração da configuração para o original depois de concluir as tarefas de administração.
Sempre que você quiser efetuar login na root
conta de usuário a partir da conta de sudo
usuário, use um dos seguintes comandos:
sudo -i
sudo su -
Você pode sair da root
conta e voltar para sua sudo
conta de usuário a qualquer momento, basta digitar exit
.
Etapa 2: Atualize o Sistema Debian 9
Antes de instalar qualquer pacote na instância do servidor Debian, nós iremos primeiro atualizar o sistema.
Certifique-se de ter efetuado login no servidor usando um usuário sudo não-root e execute os seguintes comandos:
sudo apt-get update
sudo apt-get -y upgrade
Etapa 3: instalar o servidor da Web Apache
Instale o servidor da web Apache:
sudo apt-get -y install apache2
Use o systemctl
comando para iniciar e ativar o Apache para executar automaticamente no momento da inicialização:
sudo systemctl enable apache2
sudo systemctl start apache2
Verifique seu arquivo de configuração do site padrão do Apache para garantir que a DocumentRoot
diretiva aponte para o diretório correto:
sudo vi /etc/apache2/sites-enabled/000-default.conf
A DocumentRoot
opção de configuração ficará assim:
DocumentRoot "/var/www/html"
Agora precisamos ativar o mod_rewrite
módulo Apache, portanto, certifique-se de que o arquivo de configuração do site do Deafult do Apache ainda esteja aberto e adicione as seguintes Directory
diretivas do Apache logo antes da </VirtualHost>
tag de fechamento , para que o final do arquivo de configuração seja assim:
<Directory /var/www/html/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>
A diretiva mais importante mostrada acima é AllowOverride All
.
Agora salve e saia do arquivo e ative o mod_rewrite
módulo do Apache:
sudo a2enmod rewrite
Vamos reiniciar o Apache no final deste tutorial, mas reiniciar o Apache regularmente durante a instalação e configuração é certamente um bom hábito, então vamos fazer agora:
sudo systemctl restart apache2
Etapa 4: Instalar o PHP 7.0
Agora podemos instalar o PHP 7.0 junto com todos os módulos PHP necessários requeridos pelo ProcessWire CMS:
sudo apt-get -y install php php-gd php-mbstring php-common php-mysql php-imagick php-xml libapache2-mod-php php-curl php-zip
Etapa 5: Instale o servidor MariaDB (MySQL)
O Debian 9 é padronizado para usar o servidor de banco de dados MariaDB, que é um substituto avançado, completamente aberto, desenvolvido pela comunidade, para o servidor MySQL.
Instale o servidor de banco de dados MariaDB:
sudo apt-get -y install mariadb-server
Inicie e permita que o servidor MariaDB seja executado automaticamente no momento da inicialização:
sudo systemctl enable mariadb
sudo systemctl start mariadb
Proteja sua instalação do servidor MariaDB com:
sudo mysql_secure_installation
A root
senha ficará em branco, basta pressionar enter quando for solicitada a root
senha.
Quando solicitado a criar um root
usuário MariaDB / MySQL , selecione “Y” (para sim) e insira uma root
senha segura . Simplesmente responda “Y” a todas as outras perguntas sim / não, pois as sugestões padrão são as opções mais seguras.
Etapa 6: Criar Banco de Dados para o ProcessWire CMS
Faça o login no shell do MariaDB como o root
usuário do MariaDB , executando o seguinte comando:
sudo mariadb -u root -p
Para acessar o prompt de comando do MariaDB, basta digitar a root
senha do MariaDB quando solicitado.
Execute as seguintes consultas para criar um banco de dados e um usuário do banco de dados MariaDB para o ProcessWire CMS:
CREATE DATABASE pw_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'pw_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON pw_db.* TO 'pw_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Você pode substituir o nome do banco de dados pw_db
e o nome de usuário pw_user
por algo mais a seu gosto, se preferir. Além disso, certifique-se de substituir “UltraSecurePassword” por uma senha realmente segura.
Etapa 7: Instalar os arquivos do ProcessWire CMS
Altere seu diretório de trabalho atual para o diretório da web padrão:
cd /var/www/html/
Se você receber uma mensagem de erro dizendo algo como, em 'No such file or directory'
seguida, tente o seguinte comando:
cd /var/www/ ; sudo mkdir html ; cd html
Seu atual diretório de trabalho agora será: /var/www/html/
. Você pode verificar isso com o pwd
comando (diretório de trabalho de impressão):
pwd
Agora use wget
para baixar o pacote de instalação do ProcessWire CMS:
sudo wget https://github.com/processwire/processwire/archive/master.zip
Por favor, note: Você deve definitivamente verificar a versão mais recente, visitando a página de download do ProcessWire CMS .
Liste o diretório atual para verificar se você fez o download do arquivo com sucesso:
ls -la
Vamos instalar rapidamente unzip
para que possamos descompactar o arquivo:
sudo apt-get -y install unzip
Remover index.html
:
sudo rm index.html
Agora descompacte o arquivo zip:
sudo unzip master.zip
Mova todos os arquivos de instalação para o diretório raiz da web:
sudo mv processwire-master/* /var/www/html
Altere a propriedade dos arquivos da web para evitar problemas de permissão:
sudo chown -R www-data:www-data * ./
Reinicie o Apache novamente:
sudo systemctl restart apache2
Etapa 8: Conclua a instalação do ProcessWire CMS
Agora é hora de visitar o endereço IP da sua instância do servidor no seu navegador, ou se você já tiver configurado suas configurações de DNS da Vultr (e com tempo suficiente para propagar), basta visitar seu domínio.
Para acessar a página de instalação do ProcessWire CMS, insira o endereço IP da instância do Vultr na barra de endereços do navegador, seguido por index.php
:
http://YOUR_VULTR_IP_ADDRESS/install.php
O instalador do ProcessWire CMS contém muitas opções, portanto, aqui estão algumas dicas para ajudá-lo:
- Na página de boas-vindas da instalação do ProcessWire CMS, clique no
Get Started
botão para iniciar o processo de instalação. - Agora selecione seu perfil de instalação preferido (ou site de demonstração) e clique em
Continue
. - Você verá uma
Compatibility Check
página. Se você vir algum erro, provavelmente significa que você está perdendo alguns módulos do PHP ou tem um problema de permissões, caso contrário, você pode simplesmente clicarContinue
. - Digite os seguintes valores na
MySQL Database Settings
página:DB Name: pw_db DB User: pw_user DB Pass: UltraSecurePassword DB Host: localhost DB Port: 3306
- Você pode deixar as
File Permission
configurações com seus valores padrão ou ajustá-las se entender as implicações. - Você pode inserir os futuros nomes de host do seu site na seção apropriada ou editar o
site/config.php
arquivo posteriormente, se preferir. - Clique em
Continue
para configurar o banco de dados e instalar os arquivos do ProcessWire CMS. - Em seguida, selecione o seu preferido
Admin Theme
. - Você pode alterar a opção,
Admin URL
se preferir, ou simplesmente deixá-la no valor padrão. - Digite seu
Admin Login Details
conforme mostrado abaixo:User (a-z 0-9): <admin username> Password: <admin password> Password (again): <same admin password> Email Address: <admin email address>
- Depois que todos os detalhes apropriados forem inseridos, você poderá clicar
Continue
para finalizar a instalação do ProcessWire. - Quando a instalação estiver concluída, basta clicar no
Login to Admin
botão para entrar na seção Admin.
Você pode ver um aviso dizendo algo como:
Warning: your server locale is undefined and may cause issues. Please add this to /site/config.php file (adjust en_US.UTF-8†as needed): setlocale(LC_ALL,'en_US.UTF-8');
Você pode corrigir esse erro editando o site/config.php
arquivo:
sudo vi site/config.php
Anexe o valor apropriado ao final do arquivo:
setlocale(LC_ALL,'en_GB.utf8');
Se você não conseguir descobrir qual valor usar, poderá encontrar uma lista de valores apropriados para sua instância específica do servidor, executando o locale
comando:
locale -a
Não esqueça de salvar e sair do site/config.php
arquivo quando terminar de editar.
Por motivos de segurança, certifique-se de alterar as permissões no site/config.php
arquivo:
sudo chmod 400 site/config.php
Reinicie o Apache.
sudo systemctl restart apache2
Você está pronto para começar a adicionar seu conteúdo e configurar a aparência do seu site. Certifique-se de verificar a excelente documentação do ProcessWire CMS para obter mais informações sobre como criar e configurar seu site.