Como instalar uma pilha Apache, MySQL e PHP (FAMP) no FreeBSD 12.0

Introdução

Uma pilha FAMP, que é comparável a uma pilha LAMP no Linux, é uma coleção de software de código aberto que normalmente é instalado em conjunto para permitir que um servidor FreeBSD hospede sites e aplicativos da web dinâmicos. FAMP é um acrônimo que significa F reeBSD (sistema operacional), A pache (HTTP Server), M ySQL (banco de dados), e P HP (linguagem para o conteúdo PHP processo dinâmico de programação).

Neste guia, implantaremos elementos de uma pilha FAMP em uma instância do FreeBSD 12.0 Vultr usando pkgo gerenciador de pacotes do FreeBSD.

Exigências

Antes de iniciar este guia, você precisará do seguinte:

  • Um FreeBSD 12.0 VPS.
  • Um usuário com privilégios de root ou sudousuário para fazer alterações na configuração.
  • Recomenda-se familiaridade básica com o sistema FreeBSD e a interface da linha de comandos.

Antes de você começar

Verifique a versão do FreeBSD.

uname -ro
# FreeBSD 12.0-RELEASE-p6

Verifique se o seu sistema FreeBSD está atualizado.

freebsd-update fetch install
pkg update && pkg upgrade -y

Instale os pacotes necessários.

pkg install -y sudo vim bash curl

Crie uma nova conta de usuário com seu nome de usuário preferido. Nós usamos johndoe.

adduser

# Username: johndoe
# Full name: John Doe
# Uid (Leave empty for default): <Enter>
# Login group [johndoe]: <Enter>
# Login group is johndoe. Invite johndoe into other groups? []: wheel
# Login class [default]: <Enter>
# Shell (sh csh tcsh nologin) [sh]: bash
# Home directory [/home/johndoe]: <Enter>
# Home directory permissions (Leave empty for default): <Enter>
# Use password-based authentication? [yes]: <Enter>
# Use an empty password? (yes/no) [no]: <Enter>
# Use a random password? (yes/no) [no]: <Enter>
# Enter password: your_secure_password
# Enter password again: your_secure_password
# Lock out the account after creation? [no]: <Enter>
# OK? (yes/no): yes
# Add another user? (yes/no): no
# Goodbye!

Execute o visudocomando e remova o comentário da %wheel ALL=(ALL) ALLlinha, para permitir que os membros do wheelgrupo executem qualquer comando.

visudo

# Uncomment by removing hash (#) sign
# %wheel ALL=(ALL) ALL

Agora, mude para o usuário recém-criado com su:

su - johndoe

NOTA: Substitua johndoepelo seu nome de usuário.

Configure o fuso horário:

sudo tzsetup

Etapa 1 - Instalando o Apache

O servidor da web Apache é atualmente um dos servidores da web mais populares do mundo. É uma excelente escolha para hospedar um site.

Você pode instalar o Apache usando o gerenciador de pacotes do FreeBSD pkg,. Um gerenciador de pacotes permite que você instale a maioria dos softwares sem esforço a partir de um repositório mantido pelo FreeBSD. Você pode aprender mais sobre como usar pkgaqui .

Para instalar o Apache, emita o seguinte comando:

sudo pkg install -y apache24

Verifique a versão:

httpd -v
# Server version: Apache/2.4.39 (FreeBSD)

Agora, ative e inicie o Apache:

sudo sysrc apache24_enable=yes
sudo service apache24 start

Para verificar se o Apache foi iniciado, você pode executar o seguinte comando:

sudo service apache24 status

Como resultado, você verá algo semelhante a:

# Output
apache24 is running as pid 17772.

Você pode verificar se o Apache foi instalado e funcionando sem erros, visitando o endereço IP público do servidor em seu navegador. Navegue para http://your_server_IP. Você verá a página padrão do Apache " Funciona! ".

Etapa 2 - Instalando o MySQL 8.0

Agora que você tem seu servidor web em funcionamento, é hora de instalar o MySQL, o sistema de gerenciamento de banco de dados relacional. O servidor MySQL organizará e fornecerá acesso aos bancos de dados onde seu servidor pode armazenar informações.

Novamente, você pode utilizar pkgpara obter e instalar seu software.

Para instalar o MySQL 8.0usando pkg, use este comando:

sudo pkg install -y mysql80-client mysql80-server

Este comando instalará a versão mais recente do cliente e servidor MySQL, que está atualmente 8.x.x.

Verifique a versão:

mysql --version
# mysql  Ver 8.0.16 for FreeBSD12.0 on amd64 (Source distribution)

Agora, ative e inicie o MySQL:

sudo sysrc mysql_enable=yes
sudo service mysql-server start

Para verificar se o MySQL foi iniciado, você pode executar o seguinte comando:

sudo service mysql-server status

Você verá algo semelhante ao seguinte:

# Output
mysql is running as pid 19171.

Como boa prática, você pode executar o mysql_secure_installationscript de segurança que removerá alguns padrões inseguros e limitará levemente o acesso ao seu sistema de banco de dados.

sudo mysql_secure_installation

Você será solicitado a definir uma senha, seguida de outras perguntas. Digite uma senha forte e, nas demais perguntas, pressione ENTERpara selecionar os padrões.

Etapa 3 - Instalando o PHP 7.3

PHP é uma linguagem de script do lado do servidor projetada para desenvolvimento na web. PHP é um componente indispensável da pilha FAMP. Além disso, Python ou Perl são comumente usados ​​em vez de PHP. No entanto, o PHP como a opção mais popular é usado com mais frequência. Juntamente com o banco de dados, ele dará um comportamento dinâmico aos sites ou aplicativos.

Mais uma vez, alavancar o pkgsistema para instalar componentes PHP.

Para instalar o PHP 7.3 pkg, execute este comando:

sudo pkg install -y php73 php73-mysqli mod_php73

Isso instala os php73, mod_php73e php73-mysqlipacotes.

Verifique a versão.

php --version
# PHP 7.3.7 (cli) (built: Jul 25 2019 01:28:53) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.3.7, Copyright (c) 1998-2018 Zend Technologies

Copie o arquivo de configuração PHP de amostra no lugar com este comando:

sudo cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini

Agora, ative e inicie o PHP-FPM:

sudo sysrc php_fpm_enable=yes
sudo service php-fpm start

Para verificar se o PHP-FPM foi iniciado, você pode executar o seguinte comando:

sudo service php-fpm status

Como resultado, você verá algo semelhante a:

# Output
php_fpm is running as pid 23005.

Instalando Módulos PHP (Opcional)

Para aprimorar a funcionalidade do PHP, você pode instalar opcionalmente alguns módulos adicionais.

Para ver atualmente compilado em módulos PHP, você pode executar isto:

php -m
# [PHP Modules]
# Core
# date
# libxml
# mysqlnd
# pcre
# Reflection
# SPL
# standard

# [Zend Modules]

Para procurar módulos PHP disponíveis, você pode usar este comando:

pkg search ^php73-*

Os resultados serão principalmente módulos PHP 7.3 que você pode instalar:

# Output
# php73-7.3.7                    PHP Scripting Language
# php73-Ice37-3.7.2              Modern alternative to object middleware such as CORBA/COM/DCOM/COM+
# php73-aphpbreakdown-2.2.2      Code-Analyzer for PHP for Compatibility Check-UP
# php73-aphpunit-1.8             Testing framework for unit tests
# php73-bcmath-7.3.7             The bcmath shared extension for php
# php73-brotli-0.7.0             Brotli extension for PHP
# php73-bsdconv-11.5.0           PHP wrapper for bsdconv
# php73-bz2-7.3.7                The bz2 shared extension for php
# php73-calendar-7.3.7           The calendar shared extension for php
# php73-composer-1.8.6           Dependency Manager for PHP
# php73-ctype-7.3.7              The ctype shared extension for php
# php73-curl-7.3.7               The curl shared extension for php
# . . .

Se, após a pesquisa, você decidir que precisa instalar um pacote, poderá fazê-lo usando o pkg installcomando A maioria dos aplicativos Web PHP requer módulos adicionais, por isso é bom saber como procurá-los.

Etapa 4 - Configurando o Apache para usar o módulo PHP

Antes de usar o PHP, você deve configurá-lo para funcionar com o Apache.

Execute sudo vi /usr/local/etc/apache24/modules.d/001_mod-php.confe preencha o arquivo com o conteúdo abaixo:

<IfModule dir_module>
  DirectoryIndex index.php index.html
  <FilesMatch "\.php$">
    SetHandler application/x-httpd-php
  </FilesMatch>
  <FilesMatch "\.phps$">
    SetHandler application/x-httpd-php-source
  </FilesMatch>
</IfModule>

Salve o arquivo e saia com :+ W+Q

Verifique a configuração do Apache.

sudo apachectl configtest

Como você fez alterações na configuração do Apache, é necessário recarregar o serviço para que elas sejam aplicadas. Caso contrário, o Apache ainda funcionará com a configuração anterior.

sudo apachectl restart

Etapa 5 - Testando o processamento PHP

Para testar se seu sistema está configurado corretamente para PHP, você pode criar um script PHP muito básico. Você chamará esse script info.php. Por padrão, o DocumentRootestá definido como /usr/local/www/apache24/data. Você pode criar o info.phparquivo nesse local digitando:

sudo vim /usr/local/www/apache24/data/info.php

Adicione este código a esse arquivo:

<?php phpinfo(); ?>

Navegue até http://your_server_IP/info.phpe você verá a seguinte página:

Como instalar uma pilha Apache, MySQL e PHP (FAMP) no FreeBSD 12.0

Após a instalação e configuração da pilha do FAMP, você deve remover o info.phparquivo para evitar a divulgação das informações sobre o servidor ao público.

sudo rm /usr/local/www/apache24/data/info.php

Conclusão

Parabéns, você instalou com sucesso uma pilha FAMP no seu FreeBSD 12.0 VPS. Agora você tem várias opções para o que fazer em seguida. Você instalou uma plataforma que permitirá instalar a maioria dos tipos de sites e software da web em cima dela.



Leave a Comment

A IA pode lutar contra o aumento do número de ataques de ransomware

A IA pode lutar contra o aumento do número de ataques de ransomware

Os ataques de ransomware estão aumentando, mas a IA pode ajudar a lidar com os vírus de computador mais recentes? AI é a resposta? Leia aqui para saber se é AI boone ou bane

ReactOS: Este é o futuro do Windows?

ReactOS: Este é o futuro do Windows?

ReactOS, um sistema operacional de código aberto e gratuito está aqui com a versão mais recente. Será que ela pode atender às necessidades dos usuários modernos do Windows e derrubar a Microsoft? Vamos descobrir mais sobre esse estilo antigo, mas uma experiência de sistema operacional mais recente.

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

O Whatsapp finalmente lançou o aplicativo Desktop para usuários de Mac e Windows. Agora você pode acessar o Whatsapp do Windows ou Mac facilmente. Disponível para Windows 8+ e Mac OS 10.9+

Como a IA pode levar a automação de processos ao próximo nível?

Como a IA pode levar a automação de processos ao próximo nível?

Leia isto para saber como a Inteligência Artificial está se tornando popular entre as empresas de pequena escala e como está aumentando as probabilidades de fazê-las crescer e dar vantagem a seus concorrentes.

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

Recentemente, a Apple lançou o macOS Catalina 10.15.4, uma atualização suplementar para corrigir problemas, mas parece que a atualização está causando mais problemas, levando ao bloqueio de máquinas mac. Leia este artigo para saber mais

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

O que é um sistema de arquivos de registro no diário e como ele funciona?

O que é um sistema de arquivos de registro no diário e como ele funciona?

Nosso computador armazena todos os dados de uma maneira organizada conhecida como sistema de arquivos Journaling. É um método eficiente que permite ao computador pesquisar e exibir arquivos assim que você clicar em search.https: //wethegeek.com/? P = 94116 & preview = true

Singularidade tecnológica: um futuro distante da civilização humana?

Singularidade tecnológica: um futuro distante da civilização humana?

À medida que a ciência evolui em um ritmo rápido, assumindo muitos de nossos esforços, os riscos de nos sujeitarmos a uma singularidade inexplicável também aumentam. Leia, o que a singularidade pode significar para nós.

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

O impacto da inteligência artificial na saúde 2021

O impacto da inteligência artificial na saúde 2021

A IA na área da saúde deu grandes saltos nas últimas décadas. Portanto, o futuro da IA ​​na área da saúde ainda está crescendo dia a dia.