Base de Conhecimento Instruções simples para trabalhar com o serviço Profitserver
a Principal Base de Conhecimento Como configurar um servidor web (Apache-PHP-MySQL/MariaDB) no Linux

Como configurar um servidor web (Apache-PHP-MySQL/MariaDB) no Linux


Neste artigo, daremos instruções passo a passo sobre como configurar o ambiente web em um servidor executando Linux. Primeiramente, você precisa entender que um servidor web típico consiste em alguns componentes interativos:

  • Servidor HTTP
  • interpretador de linguagem de programação
  • sistema de gerenciamento de banco de dados (DBMS)

Para gerenciar seu site, você também precisará configurar um sistema de gerenciamento de conteúdo (CMS), uma interface web para gerenciamento de banco de dados e acesso FTP.

Vamos considerar a configuração muito popular Apache-PHP-MySQL(MariaDB) no Linux. Também instalaremos o servidor ftp vsftpd, phpMyAdmin - uma interface web para gerenciamento de banco de dados e um sistema de gerenciamento de conteúdo WordPress.

Para começar, solicite um servidor VPS ou um servidor dedicado . Por exemplo, usamos um servidor virtual com endereço IP estático executando o Ubuntu Server 18.04. Todos os comandos foram executados pelo usuário root.

Configuração do servidor HTTP Apache

1. Instalação

apt install apache2

Quando a instalação estiver concluída, abra um navegador e verifique “http://[endereço_ip_do_servidor]”

Configuração do servidor HTTP Apache

Se você vir uma página de boas-vindas como esta na captura de tela acima, isso significa que seu servidor HTTP está funcionando.

2. Crie uma página de teste

O diretório raiz padrão do site é “/var/www/html” . É aqui que você encontrará a página de boas-vindas que acabou de ver. Vamos criar um diretório separado, “/var/www/sites” , para os hosts virtuais e uma subpasta, “/var/www/sites/site1”, com a página inicial do seu site de teste.

cd /var/www/

mkdir -p sites/site1

echo "<H1>Welcome</H1>" > sites/site1/index.html

Como resultado, o arquivo “/var/www/sites/site1/index.html” deverá conter apenas uma linha de código HTML:

<H1>Welcome</H1>

3. Configuração do servidor Apache

Os arquivos de configuração dos sites estão localizados no diretório “/etc/apache2/sites-available/” . Vamos criar um arquivo de configuração para um novo host virtual, utilizando como base a configuração padrão do arquivo “000-default.conf” .

cd /etc/apache2/sites-available/

cp 000-default.conf site1.conf

Abra o arquivo “site1.conf” e altere o atributo “DocumentRoot” . Insira o caminho do seu site como valor; no nosso caso, será “/var/www/sites/site1”.

Configuração do servidor Apache

Nesta fase, não precisamos configurar a operação simultânea de vários sites, então podemos desabilitar o site padrão e habilitar o novo site. Recarregue a configuração do servidor para aplicar as alterações.

a2dissite 000-default

a2ensite site1

systemctl reload apache2

Abra novamente o link “http://[endereço_ip_do_servidor]” e verifique se, em vez da página de boas-vindas padrão, você vê a nossa nova página.

Configuração do servidor Apache

Concluímos a configuração do nosso servidor HTTP e podemos prosseguir para o próximo passo.

Configuração do servidor FTP

1. Instalação

Vamos instalar nosso servidor FTP e um pacote adicional chamado “db-util” , que precisaremos para configurar usuários virtuais.

apt install vsftpd db-util

2. Crie uma conta local

O servidor vsftpd nos permite configurar permissões de acesso de uma forma muito flexível. Para nossas tarefas, precisamos fornecer aos usuários de ftp o seguinte:

  • acesso total ao conteúdo de “/var/www/sites/”;
  • desabilitar tudo acima “/var/www/”;
  • conexão com uma conta virtual;

Crie uma conta local "virtual" sem permissão de login, mas com acesso à pasta pessoal "/var/www/" . Essa conta será usada pelos usuários de FTP para se conectar ao servidor.

useradd -d /var/www virtual

Por padrão, o usuário “root” será o proprietário da pasta “/var/www” . Para permitir que os usuários de FTP modifiquem o conteúdo dos sites, vamos alterar o proprietário de “/var/www/sites/”, incluindo as subpastas de “virtual”.

chown -R virtual:root /var/www/sites

Como resultado, o usuário “virtual” poderá ver o conteúdo de “/var/www/” e escrever na subpasta “/var/www/sites/”.

3. Configuração

A configuração principal está no arquivo “/etc/vsftpd.conf” , então vamos abri-lo e editá-lo da seguinte forma:

#enable virtual users

anonymous_enable=NO

local_enable=YES

guest_enable=YES

guest_username=virtual
#configure permission

write_enable=YES

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

anon_world_readable_only=NO

anon_umask=0022

chroot_local_user=YES
#launch settings

listen=YES

pasv_min_port=30000

pasv_max_port=30999

4. Crie o banco de dados

Você precisará de um banco de dados para armazenar dados de contas virtuais.

Primeiro, vamos criar um arquivo de texto simples chamado “users.txt” na pasta home e salvar os detalhes de acesso (login e senha) dos usuários virtuais em linhas alternadas. Por exemplo, precisaremos de um usuário virtual com o login “ftp” e a senha “Qwe123” . Então, o arquivo ficará assim:

ftp

Qwe123

Vamos criar o banco de dados

db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db

Vamos modificar o arquivo PAM padrão “/etc/pam.d/vsftp” da seguinte forma:

auth required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login

account required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login

Observe que o caminho da biblioteca “pam_userdb.so” pode ser diferente, mas você pode alterá-lo, se necessário.

Recarregue o servidor vsftpd para aplicar as alterações.

systemctl restart vsftpd

Concluímos a configuração do servidor FTP.

Detalhes de conexão:

  • ftp://[endereço_ip_do_servidor]
  • Entrar: ftp
  • senha: Qwe123

Configuração do servidor PHP

1. Instalação do PHP

Hoje, a versão estável mais recente do PHP é o php 7.4.5, que não está incluído nos repositórios oficiais do Ubuntu. Vamos conectar um repositório de terceiros e instalar a versão mais recente do PHP.

apt update

apt install software-properties-common

add-apt-repository ppa:ondrej/php

apt update

apt install php7.4

2. Verifica

Para que o PHP seja executado, o arquivo da página web deve ter a extensão “.php” . Vamos renomear nossa página de teste:

cd /var/www/sites/site1/

mv index.html index.php

Adicione a seguinte linha de código PHP ao arquivo “/var/www/sites/site1/index.php” , de forma que o arquivo fique assim:

<H1>Welcome</H1>

<?php

phpinfo();

?>

Salve as alterações e verifique o resultado no navegador.

Configuração do servidor PHP - instalação e verificação

Se você vir o resultado da função “phpinfo()” , o interpretador PHP está funcionando corretamente. Agora, vamos prosseguir para a próxima etapa.

Configuração do MySQL (MariaDB)

1. Instalação

Vamos instalar o MariaDB e um módulo PHP para MySQL e depois recarregar o Apache.

apt install mariadb-server php-mysql

systemctl restart apache2

Atualize a página de teste e acesse a seção PDO na tabela de configuração do PHP. Se você encontrar a seção “PDO_mysql” , significa que o driver do MySQL está instalado corretamente.

Instalação e configuração do MySQL (MariaDB)

Em seguida, precisaremos realizar a configuração inicial de segurança do MariaDB, definindo a senha para o usuário "root" , desabilitando o acesso remoto e excluindo todas as contas de convidado.

mysql_secure_installation

No primeiro passo, precisamos inserir a senha do usuário "root" para acessar o SGBD ou pressionar Enter caso não haja senha. Como não há senha definida para o usuário "root" após a instalação, basta pressionar "Enter".

Observe que no MariaDB já existem contas próprias que não têm relação com as contas do sistema operacional. Portanto, o único usuário com o qual lidamos no MariaDB é o "root".

  MySQL: Crie uma conta e configure uma senha

Em seguida, o configurador solicitará que você defina a senha do usuário root. Digite “Y” para confirmar e insira a nova senha. No nosso caso, é “Qwe123”.

  MySQL: Crie uma conta e configure uma senha

Responda "S" a todas as perguntas restantes até o final.

A configuração está concluída!

Detalhes de acesso ao MariaDB:

  • Entrar: raiz
  • Senha: Qwe123

configuração do phpMyAdmin

1. Instalação

Vamos instalar a extensão necessária para o PHP - mbstring.

apt install php-mbstring

No repositório oficial há apenas uma versão desatualizada do phpMyAdmin, então vamos instalar a nova manualmente.

Acesse o site oficial do projeto “ https://www.phpmyadmin.net/ ” e baixe o arquivo mais recente.

Instalação e configuração do phpMyAdmin

Copie o arquivo para o servidor na pasta “/var/www/sites/” usando qualquer cliente FTP.

Descompacte a pasta e renomeie-a para “phpMyAdmin” . Não se esqueça de instalar o utilitário “unzip” . Você pode excluir o arquivo compactado depois de descompactá-lo.

apt install unzip

cd /var/www/sites/

unzip phpMyAdmin-5.0.2-all-languages.zip

mv phpMyAdmin-5.0.2-all-languages phpMyAdmin

rm phpMyAdmin-5.0.2-all-languages.zip

Crie a seguinte pasta “/var/www/sites/phpMyAdmin/tmp” para arquivos temporários e habilite o acesso para todos. Caso contrário, o phpMyAdmin exibirá uma mensagem de acesso negado à pasta temporária.

cd /var/www/sites/phpMyAdmin/

mkdir tmp

chmod 777 tmp

2. Crie um alias

Como o phpMyAdmin não é um host virtual separado e está localizado fora do diretório raiz, vamos configurar o alias.

Abra o arquivo “/etc/apache2/mods-available/alias.conf” e adicione esta linha:

Alias /pma “/var/www/sites/phpMyAdmin"

dentro desta seção:

<IfModule alias_module>

</IfModule>
phpMyAdmin: Crie um alias

Recarregue o Apache para aplicar as alterações.

systemctl reload apache2

O alias está configurado, então podemos acessar o phpMyAdmin aqui : “http://[endereço_ip_do_servidor]/pma”.

3. Prepare o banco de dados

Como restringimos o uso do usuário root durante a configuração inicial do MariaDB, teremos que criar uma nova conta com todas as permissões que serão usadas para acessar o phpMyAdmin.

Além disso, para habilitar recursos adicionais do phpMyAdmin, precisaremos de um banco de dados de serviço e uma conta para acessá-lo.

Vamos criar as contas

mariadb -u root -p
GRANT ALL PRIVILEGES ON *.* TO 'pma'@'localhost' IDENTIFIED BY 'Qwe123' WITH GRANT OPTION;
GRANT SELECT, INSERT, UPDATE, DELETE ON `phpmyadmin`.* TO 'pmaservice'@'localhost' IDENTIFIED BY 'Qwe123' WITH grant option;
quit

Observe que o nome do banco de dados na segunda solicitação está em back sparks “… ON `phpmyadmin` .* TO 'pma'@'localhost' IDENTIFIED BY …”,

No resultado, haverá duas contas criadas no MariaDB:

  • Login: pma, Senha: Qwe123Acesso total, será usado para efetuar login no phpMyAdmin
  • Login: pmaservice, Senha: Qwe123A conta de serviço é necessária para que recursos adicionais funcionem

Na próxima etapa, definiremos esses detalhes no arquivo de configuração “config.inc.php”.

Em seguida, precisaremos importar o banco de dados do arquivo “phpMyAdmin/sql/create_tables.sql”.

Vamos importá-lo com a ajuda do phpMyAdmin.

Abra o link “http://[endereço_ip_do_servidor]/pma”

Digite o login “pma” e a senha “Qwe123”

Vá em “Importar” , clique em “Selecionar arquivo” e selecione o arquivo “sql/create_tables.sql” no diretório raiz do phpMyAdmin. Deve haver uma pasta chamada “phpMyAdmin” no seu computador com os arquivos. Descompacte-a, se necessário.

configuração do phpmyadmin

Clique em “Avançar” para iniciar a importação.

4. Configuração

Vamos copiar o arquivo de configuração do modelo

cd /var/www/sites/phpMyAdmin/

cp config.sample.inc.php config.inc.php

Vamos abrir o arquivo de configuração “/var/www/sites/phpMyAdmin/config.inc.php” e fazer as seguintes alterações:

Defina um valor aleatório de 32 caracteres para o atributo “$cfg['blowfish_secret']” . Use qualquer gerador de senhas para isso.

Como instalar e configurar o WordPress em um servidor Linux

Remova os comentários de todas as linhas da seção “Configurações de armazenamento do phpMyAdmin” e defina o login e a senha da conta de serviço do MariaDB para os atributos “controluser” e “controlpass” de acordo. No nosso caso, são pmaservice e Qwe123.

Como instalar e configurar o WordPress em um servidor Linux

Salve as alterações.

Detalhes de acesso para phpMyadmin:

  • http://[server’s_ip_address]/pma/
  • Entrar: pma
  • Senha: Qwe123

Como instalar e configurar o WordPress em um servidor Linux

1. Posicionamento de pacotes e arquivos do WordPress

Acesse o site oficial do WordPress “ https://ru.wordpress.org/ ” e baixe o arquivo para o seu computador.

Faça o upload do arquivo para o servidor na pasta “/var/www/sites/” e descompacte-o na pasta “wordpress ”.

Copie o conteúdo da pasta raiz “/var/www/sites/wordpress/” do site “/var/www/sites/site1/”.

Como copiamos os arquivos via console com permissões de root, vamos alterar o proprietário da pasta “/var/www/sites/”, incluindo o conteúdo da pasta “virtual” . Isso é necessário para habilitar o acesso total à conexão FTP pelo cliente.

cd /var/www/sites/

tar -xzvf wordpress-5.4-ru_RU.tar.gz

cp -R wordpress/* site1/

chown -R virtual:root /var/www/sites

2. Crie um banco de dados para WordPress

Entre no phpMyAdmin e clique em “Criar banco de dados”. Especifique um nome de banco de dados arbitrário, no nosso caso “wordpress_db” e clique no botão “Criar”.

Crie um banco de dados para WordPress

Selecione o novo banco de dados na seção à esquerda e clique em “Privilégios”.

Crie um banco de dados para WordPress

Em seguida, clique em “Adicionar conta de usuário”.

Na janela que se abrir, insira o login e a senha ( wpservice / Qwe123 ), marque a opção “Conceder todos os privilégios no wordpress_db” e clique em “Avançar”.

Adicionar conta de usuário no banco de dados para WordPress

Na página seguinte, clique em “Cancelar tudo” para redefinir todos os privilégios no nível do banco de dados e clique em “Avançar”.

Adicionar conta de usuário no banco de dados para WordPress

3. Configuração do WordPress em um servidor Linux

Vá para o diretório raiz do seu site e copie o arquivo de configuração do modelo

cd /var/www/sites/site1/

cp wp-config-sample.php wp-config.php

Abra o arquivo “wp-config.php” , insira os parâmetros de conexão do banco de dados que criamos na etapa anterior e salve as alterações.

Configuração do WordPress em um servidor Linux

4. Instale o CMS WordPress

Abra o seguinte link no navegador : “http://[endereço_ip_do_servidor]/wp-admin/install.php”.

Preencha todos os campos e clique em “Instalar o WordPress” . Defina um nome de usuário e uma senha aleatórios. No nosso caso, são wpadmin e Qwe123, respectivamente.

Esses detalhes serão usados ​​para acessar o WordPress.

Instalar o CMS WordPress em um servidor Linux

Após concluir a instalação, abra o link “http://[endereço_ip_do_servidor]/wp-login.php” , insira os dados de acesso e faça login no WordPress.

Instalar o CMS WordPress em um servidor Linux

Você deverá ver um dos modelos do WordPress na página principal.

Instalar o CMS WordPress em um servidor Linux

A configuração está concluída.

Detalhes de acesso ao WordPress:

  • http://[server’s_ip_address]/wp-login.php
  • Entrar: wpadmin
  • Senha: Qwe123
Próximo artigo ❯ Configurando o arquivo .htaccess

Pergunte-nos sobre VPS

Estamos sempre prontos para responder suas perguntas a qualquer hora do dia ou da noite.