Como instalar o Apache, MySQL & Php (Lamp) no CentOS 8

Como instalar o Apache, MySQL & Php (Lamp) no CentOS 8

LÂMPADA são os acrônimos de Linux, Apache, MySQL e PHP. Apache é o servidor da web para servir os arquivos sobre o protocolo HTTP. MySQL é o servidor de banco de dados popular. PHP é a linguagem de programação usada para o desenvolvimento de aplicativos da Web. Usando esses aplicativos, podemos criar um servidor web completo. A maneira mais comum de executar aplicativos PHP com Apache é o uso do módulo MOD_PHP. Além disso, a boa alternativa é usar o php-fpm, que tem várias vantagens sobre isso. A instalação padrão no CentOS 8 usa o PHP-FPM para processar arquivos PHP.

Este tutorial ajudará você a instalar e configurar a lâmpada (Linux, Apache, MySQL e PHP) nos sistemas Centos 8 e Rhel 8 Linux.

Link útil:

  • Configuração Let's Encrypt SSL com Apache no CentOS 8
  • Como configurar o usuário SFTP apenas no CentOS 8

Pré -requisitos

  • Máquina CentOS 8 recém -instalada.
  • Configuração inicial do servidor inicial
  • Acesso à concha com privilégios sudo

Etapa 1 - Instale o Apache

Os pacotes de servidores da Web Apache estão disponíveis no repositório AppStream padrão no CentOS 8. Você só precisa atualizar o cache DNF e instalar pacotes usando os seguintes comandos.

sudo dnf update sudo dnf install httpd httpd-tools 

O pacote MOD_SSL fornece a funcionalidade para usar um certificado SSL para HTTP seguro. Após a instalação, ative o serviço HTTPD e inicie.

sudo systemctl ativar httpd.serviço sudo systemctl iniciar httpd.serviço 

Agora verifique o status do serviço Apache:

SUDO SYSTEMCTL STATUS HTTPD.serviço 

Saída:

● Httpd.Serviço - o servidor Apache HTTP carregado: carregado (/usr/lib/systemd/system/httpd.serviço; habilitado; predefinição do fornecedor: desativado):/usr/lib/systemd/system/httpd.serviço.d └─php-fpm.conft ativo: ativo (em execução) desde sábado 2020-03-22 04:27:24 EDT; 5 anos atrás Docs: Homem: Httpd.Serviço (8) PID principal: 8644 (httpd) Status: "Iniciado, ouvindo: Porta 80" Tarefas: 213 (Limite: 8918) Memória: 21.5m CGROUP: /Sistema.Slice/httpd.Serviço ├─8644/usr/sbin/httpd -dforeground ├─8650/usr/sbin/httpd -dforeground ├─8651/usr/sbin/httpd -dforeground ├─855/usr/sbin/httpd -dfore ├─8552/usr/sbin/httpd -dforeRground ├─855/usr/sbin/httpd -dfore. /sbin/httpd -dforeground 22 04:27:23 Tecadmin Systemd [1]: Iniciando o servidor Apache HTTP… 22 de março 04:27:24 Tecadmin Systemd [1]: iniciou o Apache HTTP Server. 22 de março 04:27:24 Tecadmin httpd [8644]: servidor configurado, ouvindo: Porta 80 

Etapa 2 - Instale o MySQL Server

Os mais recentes pacotes MySQL 8 estão disponíveis no repositório Appstrem sob o CentOS 8. Use o seguinte comando para instalar o MySQL Server, incluindo os pacotes necessários em seu sistema.

sudo dnf -y install @mysql 

Depois de concluir a instalação, ative o serviço MySQL para iniciar automaticamente o início do sistema. Também inicie o serviço manualmente pela primeira vez.

sudo systemctl Ativar mysqld.serviço sudo systemctl iniciar mysqld.serviço 

Em seguida, verifique o status atual do serviço usando o seguinte comando:

SUDO SYSTEMCTL STATUS MYSQLD.serviço 
● MySqld.Serviço - MySQL 8.0 servidor de banco de dados carregado: carregado (/usr/lib/systemd/system/mysqld.serviço; habilitado; predefinição do fornecedor: desativado) ativo: ativo (em execução) desde o SAT 2020-03-22 02:49:33 EDT; 5min Processo atrás: 5841 ExecStartPost =/usr/libexec/mysql-check-upgrade (code = exitido, status = 0/success) Processo: 5706 ExecStartPre =/usr/libexec/mysql-prepare-db-dir mysqld.Serviço (Code = EXITADO, STATUS = 0/SUCCESSO) Processo: 5682 ExecStartPre =/usr/libexec/mysql-check-socket (code = EXITED, status = 0/success) PID principal: 5798 (MySQLD): "Servidor é "Tarefas operacionais: 38 (Limite: 8918) Memória: 442.1M CGROUP: /Sistema.Slice/MySqld.Serviço └─5798/usr/libexec/mysqld -baseado =/usr 22 de março 02:48:42 Tecadmin Systemd [1]: Iniciando MySQL 8.0 servidor de banco de dados… 22 de março 02:48:45 Tecadmin mysql-prepare-db-dir [5706]: inicializando o banco de dados MySQL de março 22 02:49:33 Tecadmin Systemd [1]: Iniciado MySql 8.0 servidor de banco de dados. 

A instalação do MySQL foi concluída. Agora você pode conectar o servidor MySQL sem senha, mas recomendamos garantir a instalação do MySQL. Os pacotes MySQL fornecem comando mysql_secure_installation para aplicar a segurança. Basta executar o comando abaixo no terminal:

sudo mysql_secure_installation 

e siga as instruções na tela. Abaixo estão os detalhes que exigem a entrada do usuário.

  • Pressione Y | y para sim, qualquer outra chave para não: y
  • Por favor, digite 0 = baixo, 1 = médio e 2 = forte: 2
  • Nova Senha: [Digite uma senha forte aqui]
  • Re-introduza a nova palavra-passe: RE DIGA a senha aqui
  • Deseja continuar com a senha fornecida?(Pressione Y | y para sim, qualquer outra chave para não): y
  • Remova usuários anônimos? (Pressione Y | y para sim, qualquer outra chave para não): y
  • Proibir o login de raiz remotamente? (Pressione Y | y para sim, qualquer outra chave para não): y
  • Remova o banco de dados de teste e o acesso a ele? (Pressione Y | y para sim, qualquer outra chave para não): y
  • Recarregue as tabelas de privilégio agora? (Pressione Y | y para sim, qualquer outra chave para não): y

Etapa 3 - Instale o PHP

O repositório REMI contém os pacotes PHP mais recentes para o sistema Linux CentOS 8. Então, antes de tudo, você precisa adicionar o repositório REMI ao seu sistema. Basta executar o seguinte comando para adicionar o repositório.

sudo dnf install dnf-utils http: // rpms.REMIREPO.Net/Enterprise/Remi-Relase-8.RPM 

Em seguida, ative o módulo DNF necessário para instalação de php. Aqui estamos habilitando o módulo para instalar o Php 7.4. Você pode mudar isso para Php 7.3 ou Php 7.2 De acordo com seus requisitos.

Módulo SUDO DNF Redefinir módulo PHP SUDO DNF Habilitar PHP: REMI-7.4 

Depois que o repositório estiver ativado em seu sistema. Instale os pacotes PHP junto com os módulos PHP necessários.

sudo dnf install php php-mysqlnd 

Muitos também precisam instalar outros módulos de PHP necessários, conforme os requisitos do seu aplicativo. O comando abaixo instalará poucos módulos PHP usados ​​com frequência:

DNF Instalação PHP-GD PHP-ZIP PHP-MCRYPT PHP-JSON PHP-XML PHP-GETTEXT PHP-CURL PHP-INTL 

Etapa 4 - Crie Apache VirtualHost

Todos os pacotes necessários para o ambiente da lâmpada são instalados. Agora, crie o host virtual do Apache. Por padrão, o Apache usa o PHP-FPM para processar arquivos PHP no sistema CentOS 8.

Crie e edite o arquivo de configuração do host virtual no editor de texto favorito:

sudo vim/etc/httpd/conf.D/Tecadmin.exemplo.líquido.conf 

Adicione o seguinte conteúdo no arquivo de configuração. Certifique -se de alterar os parâmetros necessários.

ServerAdmin [email protected] documentroot/var/www/html servername tecadmin.exemplo.Net Serveralias www.Tecadmin.exemplo.Net ErrorLog Logs/Tecadmin.error de rede.Log CustomLog Logs/Tecadmin.acesso líquido.log combinado
12345678910 ServerAdmin [email protected] documentroot/var/www/html servername tecadmin.exemplo.Net Serveralias www.Tecadmin.exemplo.Net ErrorLog Logs/Tecadmin.error de rede.Log CustomLog Logs/Tecadmin.acesso líquido.log combinado

Salve o arquivo de configuração do host virtual e recarregue o Apache para aplicar alterações.

sudo systemctl reiniciar httpd.serviço 

Link útil:

  • Configuração Let's Encrypt SSL com Apache no CentOS 8

Etapa 5 - Permitir portas no firewalld

O servidor Linux CentOS 8 está pronto para servir o aplicativo sobre o ambiente da lâmpada. Se o seu sistema tiver o Firewalld instalado Ans Active, você precisará permitir portas Apache. Isso permitirá que os usuários de rede acessem o aplicativo da web a partir de sistemas remotos.

Os seguintes comandos abrirão as portas necessárias para você.

sudo firewall-cmd-zone = public --permanent --add-service = http sudo firewall-cmd-zone = public --permanent --add-service = https sudo firewall-cmd--reload 

Link útil:

  • O que é firewalld e como implementar no Linux

Etapa 6 - Configuração de teste

Tudo feito. Para testar o ambiente, crie um script PHP com phpinfo () função. Coloque este arquivo no seu servidor documento root. Use o comando abaixo para fazer isso.

eco "">/var/www/html/info.php 

Em seguida, acesse informações.PHP usando o endereço IP do servidor (para o VirtualHost padrão) para o seu domínio configurado no Apache VirtualHost.

http: // tecadmin.exemplo.rede/info.php 

Conclusão

Você configurou com sucesso o ambiente da lâmpada em seu sistema CentOS 8 ou RHEL 8 Linux. Em seguida, você pode instalar PhpMyadmin no seu sistema.