Como instalar nginx, mariadb e php (femp) em freebsd

Como instalar nginx, mariadb e php (femp) em freebsd

Este tutorial o guiará sobre como instalar e configurar o FBEMP em FreeBSD 11.x Último lançamento. O FBEMP é um acrônimo que descreve a seguinte coleção de software:

FreeBSD 11.1 Distribuição do tipo UNIX, servidor da web nginx, sistema de gerenciamento de bancos de dados relacionais de mariadb (um garfo comunitário de MySQL) e linguagem de programação dinâmica do PHP que é executada no lado do servidor.

Requisitos

  1. Instalação do FreeBSD 11.x
  2. 10 coisas para fazer após a instalação do FreeBSD

Etapa 1: Instale o Nginx Web Server no FreeBSD

1. O primeiro serviço que vamos instalar para o nosso FBEMP empilhar FreeBSD é o servidor da web, representado por Nginx Programas.

Nginx O servidor da web possui mais pacotes pré-explicados disponíveis em FreeBSD 11.x portas. Para obter uma lista de Nginx binários de Portas Repositórios, emita os seguintes comandos no terminal do seu servidor.

# ls/usr/portas/www/| Grep nginx # pkg pesquisa -O nginx 
Encontre pacotes nginx

2. Nesta configuração específica, instalaremos a versão principal do pacote de Nginx emitindo o comando abaixo. O pkg O gerenciamento de pacotes perguntará se você deseja prosseguir com a instalação do pacote Nginx. Responda com sim (y na linha de comando) para iniciar o processo de instalação.

# pkg install nginx 
Instale o nginx no FreeBSD

3. Depois que o pacote de servidor da web nginx foi instalado em seu sistema, execute os seguintes comandos para ativar o Daemon em todo o sistema e iniciar o serviço em seu sistema.

# sysrc nginx_enable = "sim" # serviço nginx start 
Inicie e habilite o nginx no FreeBSD

4. Em seguida, usando o Sockstat Comando, verifique os soquetes da rede de serviços nginx, se eles estiverem vinculativos 80/TCP Port, emitindo o comando abaixo. A saída do comando Sockstat será canalizada através do utilitário Grep para reduzir os resultados retornados apenas para a string nginx.

# Sockstat -4 | Grep nginx 

5. Por fim, abra um navegador em um computador de mesa em sua rede e visite a página da web padrão nginx via protocolo HTTP. Escreva o Fqdn da sua máquina ou seu nome de domínio ou o endereço IP do seu servidor no URL do navegador arquivado para solicitar a página da web padrão do Nginx Web Server. A mensagem "Bem vindo ao nginx!”Deve ser exibido em seu navegador, conforme ilustrado na captura de tela abaixo.

http: // yourDomain.com http: // your_server_ip http: // your_machine_fqdn 
Verifique o nginx no FreeBSD

6. O diretório WeBoot padrão para o conteúdo da Web Nginx em localização em /usr/local/www/nginx/ Caminho absoluto do sistema. Neste local, você deve criar, copiar ou instalar arquivos de conteúdo da web, como .html ou .php arquivos, para o seu site.

Para alterar este local, edite o arquivo de configuração principal do nginx e altere a diretiva raiz para refletir seu novo caminho Webroot.

# nano/usr/local/etc/nginx/nginx.conf 

Aqui, pesquise e atualize a seguinte linha para refletir seu novo caminho Webroot:

raiz/caminho/para/new/webroot; 

Etapa 2: Instale o PHP no FreeBSD

7. Diferente Apache http Servidor, Nginx não tem capacidade de processar nativamente o código PHP. Em troca, o servidor da web nginx passa solicitações de PHP para um intérprete PHP, como PHP-FPM FastCGI Daemon, que inspeciona e executa o código. O código resultante é então devolvido ao NGINX, que rememenda o código de volta ao formato HTML solicitado e envia o código mais para o navegador da web do visitante.

FreeBSD 11.x Os repositórios de portas oferecem várias versões binárias para a linguagem de programação PHP, como Php 5.6, Php 7.0 e Php 7.1 lançamentos. Para exibir todas as versões PHP pré-compiladas disponíveis em FreeBSD 11.x, Execute os comandos abaixo .

# pkg Search -o php # ls/usr/portas/lang/| Grep php 

8. Você pode optar por instalar qualquer versão do PHP que você achar mais adequado para o aplicativo da web que você executa em seu sistema. No entanto, neste guia, instalaremos a versão mais recente do PHP.

Para instalar Php 7.1 liberação e alguns módulos importantes do PHP necessários para diversos aplicativos da web, execute o seguinte comando.

# pkg install php71 php71-mysqli php71-mcrypt php71-zlib php71-gd php71-json mod_php71 php71-mbstring php71-curl 

9. Depois de instalar pacotes PHP em seu sistema, aberto PHP-FPM arquivo de configuração para o nginx e ajuste os valores do usuário e do grupo para corresponder ao valor no usuário do tempo de execução do nginx, que é www. Primeiro, faça um backup do arquivo com o comando abaixo.

# cp/usr/local/etc/php-fpm.d/www.conf ,.cópia de segurança 

Em seguida, abra o arquivo e atualize as seguintes linhas, conforme apresentado na amostra abaixo.

usuário = www Group = www 
Configure o PHP-FPM no FreeBSD

10. Além disso, crie um arquivo de configuração PHP usado para produção, emitindo o comando abaixo. Neste arquivo, você pode fazer alterações personalizadas que serão aplicadas ao intérprete PHP em tempo de execução.

# cp/usr/local/etc/php.INI-PRODUÇÃO/USR/LOCAL/ETC/PHP.ini 

Por exemplo, mude o data.fuso horário Configuração para o intérprete PHP para atualizar sua localização física da sua máquina, como mostrado no exemplo abaixo. A lista de fugas horárias PHP pode ser encontrada aqui: http: // php.net/manual/pt/times.php.

# vi/usr/local/etc/php.ini 

Adicione o seguinte fuso horário (defina o fuso horário de acordo com o seu país).

data.fuso horário = Europa/Londres 

Você também pode ajustar outras variáveis ​​de PHP, como o tamanho máximo do arquivo de arquivo carregado, que pode ser aumentado modificando os valores abaixo:

upload_max_filesize = 10m post_max_size = 10m 

11. Depois, você fez as configurações personalizadas para PHP, ativar e iniciar PHP-FPM Daemon para aplicar as novas configurações emitindo os comandos abaixo.

# sysrc php_fpm_enable = sim # serviço php-fpm 
Inicie e habilite o PHP-FPM no FreeBSD

12. Por padrão, PHP-FPM Daemon in FreeBSD liga -se em um soquete de rede local na porta 9000/TCP. Mostrar PHP-FPM Sockets de rede executam o seguinte comando.

# Sockstat -4 -6 | Grep php-fpm 

13. Para que o servidor da web nginx passe os scripts PHP para Fastcgi Gateway Server, que está ouvindo 127.0.0.1: 9000 Socket, abra o arquivo de configuração principal do nginx e adicione o seguinte bloco de código, conforme ilustrado na amostra abaixo.

# vi/usr/local/etc/nginx/nginx.conf 

Bloco de código fastcgi para nginx:

 Localização ~ \.php $ root/usr/local/www/nginx; fastcgi_pass 127.0.0.1: 9000; Índice FastCGI_Index.php; fastcgi_param script_filename $ request_filename; incluir fastcgi_params;  
Configure o fastcgi para o nginx no FreeBSD

14. Para visualizar as informações atuais do PHP para o seu servidor, crie um informações.php Arquivo no Nginx WeBoot Path, emitindo o seguinte comando.

# echo "" | tee/usr/local/www/nginx/info.php 

15. Em seguida, teste e reinicie o daemon nginx para aplicar o Php fastcgi configurações e visite o informações.php página em um navegador.

# nginx -t # teste nginx arquivo de configuração para erros de sintaxe # serviço nginx reiniciar 

Substitua o endereço IP ou o nome de domínio nos links abaixo. A página de informações do PHP deve exibir informações como ilustrado na captura de tela abaixo.

http: // yourDomain.com/info.php http: // server_ip-orfqdn/info.php 
Verifique as informações do PHP em FreeBSD

Etapa 3: Instale o mariadb no FreeBSD

16. O último componente ausente do seu FEMP Pilha no banco de dados. Mariadb/mysql é um dos software RDBMS de código aberto mais associado com o NGINX Web Server usado para implantar sites dinâmicos.

Na verdade, Mariadb/mysql é um dos bancos de dados relacionais mais utilizados do mundo. Pesquisando Portas FreeBSD, Você pode encontrar vários lançamentos de Mariadb/mysql.

Neste guia, instalaremos Mariadb banco de dados, que é um garfo comunitário de Mysql base de dados. Para procurar versões disponíveis de Mariadb, emitir os seguintes comandos no terminal.

# ls -al/usr/portas/bancos de dados/| grep mariadb # pkg pesquisa mariadb 
Encontre pacotes de mariadb

17. Para instalar a versão mais recente do servidor de banco de dados MariaDB, execute o seguinte comando. Você também deve instalar o módulo de driver de banco de dados relacional PHP usado pelos scripts PHP para conectar -se a MySQL.

# pkg install mariadb102-server php71-mysqli 

18. Após a instalação do banco de dados, ative o daemon mysql e inicie o serviço de banco de dados executando os seguintes comandos.

# sysrc mysql_enable = "sim" # serviço mysql-server start 

19. Além disso, certifique -se de reiniciar PHP-FPM Daemon para carregar a extensão do driver MySQL.

# Service Php-fpm reiniciar
20. Na próxima etapa, seguro Mariadb Banco de dados lançando mysql_secure_installation roteiro. Use a amostra abaixo do script de instalação para responder às perguntas. Basicamente, diga sim (y) Para todas as perguntas feitas para proteger o banco de dados e digitar uma senha forte para o usuário do MySQL Root.
#/usr/local/bin/mysql_secure_installation 
Saída de script de instalação segura do MySQL
NOTA: Executa todas as partes deste script é recomendado para todos os servidores MariaDB em uso da produção! Por favor, leia cada etapa com cuidado! Para fazer login no mariadb para protegê -lo, precisaremos da senha atual para o usuário root. Se você acabou de instalar o mariadb e ainda não definiu a senha root, a senha ficará em branco, então você deve apenas pressionar Enter aqui. Digite a senha atual para root (ENTER para nenhum): OK, senha usada com êxito, movendo -se ... definir a senha root garante que ninguém possa fazer login no usuário do Mariadb Root sem a autorização adequada. Defina senha raiz? [S/N] y Nova senha: reentrar nova senha: senha atualizada com sucesso! Recarregar tabelas de privilégio ... sucesso! Por padrão, uma instalação do Mariadb tem um usuário anônimo, permitindo que qualquer pessoa faça login no mariadb sem ter que ter uma conta de usuário criada para eles. Isso se destina apenas a testar e tornar a instalação um pouco mais suave. Você deve removê -los antes de se mudar para um ambiente de produção. Remova usuários anônimos? [S/N] y… Sucesso! Normalmente, a raiz só deve poder se conectar de 'localhost'. Isso garante que alguém não possa adivinhar a senha raiz da rede. Proibir o login de raiz remotamente? [S/N] y… Sucesso! Por padrão, o Mariadb vem com um banco de dados chamado 'teste' que qualquer um pode acessar. Isso também se destina apenas a testes e deve ser removido antes de se mudar para um ambiente de produção. Remova o banco de dados de teste e o acesso a ele? [S/N] y - Dropping de banco de dados de teste ... sucesso! - Removendo privilégios no banco de dados de teste ... sucesso! Recarregar as tabelas de privilégio garantirá que todas as alterações feitas até agora entrarão em vigor imediatamente. Recarregue as tabelas de privilégio agora? [S/N] y… Sucesso! Limpando ... tudo feito! Se você concluiu todas as etapas acima, sua instalação de mariadb agora deve estar segura. Obrigado por usar o mariadb! 

21. Para testar a conexão do banco de dados MARIADB do console, execute o comando abaixo.

# mysql -u root -p -e "Mostrar status como 'conexões'" 

22. Para proteger ainda mais o mariadb, que por padrão escuta as conexões de rede recebidas em 0.0.0.0: 3306/TCP soquete, emita o comando abaixo para forçar o serviço a vincular loopback interface e desaprovar completamente o acesso remoto. Posteriormente, reinicie o serviço MySQL para aplicar a nova configuração.

# sysrc mysql_args = "-bind-address = 127.0.0.1 " # Serviço MySQL-Server Reiniciar 
Vincular o endereço de mariadb ao loopback

Verifique se o LocalHost A ligação foi aplicada com sucesso executando o comando netstat, como mostrado no exemplo abaixo.

# netstat -an -p tcp 

Isso é tudo! Você instalou com sucesso o NGINX Web Server, o MariaDB Relational Database e o PHP Server-Side Programming Language em FreeBSD. Agora você pode começar a criar páginas dinâmicas da web para servir conteúdo da web aos seus visitantes.