Configurando servidor local no Linux: Nginx, MySQL e PHP

WHAT TO KNOW - Sep 1 - - Dev Community

Configurando um Servidor Local no Linux: Nginx, MySQL e PHP

Introdução

Desenvolver aplicações web exige um ambiente de teste local para garantir a funcionalidade e desempenho antes de publicar online. Configurar um servidor local no Linux permite que desenvolvedores trabalhem em seus projetos com a mesma infraestrutura de produção, facilitando o desenvolvimento, depuração e testes.

Este artigo aborda a configuração de um ambiente de desenvolvimento local no Linux utilizando as tecnologias Nginx, MySQL e PHP, essenciais para a construção de aplicações web dinâmicas.

O Que Você Precisa Saber

Antes de começar, certifique-se de ter os seguintes conhecimentos básicos:

  • Linux: Familiaridade com os comandos básicos do terminal Linux, como cd, ls, sudo, etc.
  • SSH: Conhecimento básico sobre como conectar e gerenciar conexões SSH.
  • Editor de texto: Escolha um editor de texto que lhe seja familiar, como Vim, Nano, ou um editor GUI como Gedit ou Kate.
  • Conhecimento básico de HTML, CSS e JavaScript: Isso ajudará você a entender como o frontend de uma aplicação web interage com o backend.
  • Conhecimento básico de PHP: Compreensão dos conceitos básicos de PHP, como variáveis, operadores, condicionais e loops, será essencial para trabalhar com o backend.

Instalação do Software

  1. Nginx: O Nginx é um servidor web de alto desempenho e leve, amplamente utilizado para hospedar sites e aplicações web. Para instalá-lo, use o seguinte comando:
   sudo apt update
   sudo apt install nginx
Enter fullscreen mode Exit fullscreen mode

Após a instalação, o Nginx estará disponível no endereço http://localhost. Para verificar se o serviço está funcionando, abra um navegador e acesse o endereço. Você deverá ver a página padrão do Nginx.

Nginx Default Page

  1. MySQL: O MySQL é um sistema de gerenciamento de banco de dados relacional (RDBMS) popular, usado para armazenar e gerenciar dados de aplicações web. Para instalá-lo, use o comando:
   sudo apt install mysql-server
Enter fullscreen mode Exit fullscreen mode

Durante a instalação, o sistema solicitará que você configure a senha do root do MySQL. Anote esta senha, pois você a precisará para acessar o banco de dados.

  1. PHP: O PHP é uma linguagem de script de servidor que é frequentemente utilizada para desenvolver o backend de aplicações web. Para instalá-lo, use o comando:
   sudo apt install php libapache2-mod-php php-mysql php-mbstring php-xml php-curl php-gd
Enter fullscreen mode Exit fullscreen mode

Este comando instala o PHP e alguns módulos adicionais que são frequentemente necessários para o desenvolvimento web, como mysql (para conexão com o MySQL), mbstring (para suporte de caracteres multilíngues), xml (para manipulação de arquivos XML) e gd (para geração de imagens).

Configurando o Ambiente de Desenvolvimento

  1. Criando um diretório para seu projeto: Crie um diretório para armazenar os arquivos do seu projeto. Você pode usar o comando mkdir para isso:
   mkdir myproject
   cd myproject
Enter fullscreen mode Exit fullscreen mode
  1. Criando um arquivo index.php: Dentro do diretório do seu projeto, crie um arquivo chamado index.php para servir como a página inicial do seu site. Este arquivo conterá o código PHP que será executado pelo servidor.
<?php
   echo "Olá, mundo!";
   ?>
Enter fullscreen mode Exit fullscreen mode
  1. Criando um banco de dados: Utilize o comando mysql para acessar o prompt do MySQL e criar um novo banco de dados:
   mysql -u root -p
Enter fullscreen mode Exit fullscreen mode

No prompt do MySQL, execute o comando:

   CREATE DATABASE mydatabase;
Enter fullscreen mode Exit fullscreen mode

Substitua mydatabase pelo nome do seu banco de dados.

  1. Configurando o Nginx: Abra o arquivo de configuração do Nginx no editor de texto de sua escolha:
   sudo nano /etc/nginx/sites-available/default
Enter fullscreen mode Exit fullscreen mode

Edite o arquivo da seguinte forma:

   server {
       listen 80;
       server_name localhost;

       root /var/www/html/myproject;
       index index.php index.html index.htm;

       location / {
           try_files $uri $uri/ /index.php?$args;
       }

       location ~ \.php$ {
           try_files $uri =404;
           fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
           fastcgi_index index.php;
           include fastcgi_params;
           fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
       }
   }
Enter fullscreen mode Exit fullscreen mode

Este bloco de configuração define o Nginx para servir o conteúdo do diretório myproject como o servidor web do seu projeto. Ele configura o Nginx para lidar com arquivos PHP e encaminhá-los para o processo PHP-FPM para processamento.

  1. Reiniciando o Nginx: Para aplicar as alterações de configuração do Nginx, reinicie o serviço:
   sudo systemctl restart nginx
Enter fullscreen mode Exit fullscreen mode

Testando o Ambiente

  1. Verificando a página inicial: Acesse http://localhost no seu navegador. Você deve ver a mensagem "Olá, mundo!" exibida na página.

  2. Criando uma nova página: Crie um novo arquivo about.php dentro do diretório myproject e adicione o seguinte código:

<?php
   echo "<h1>
Sobre Nós
";
   echo "
<p>
 Esta é a página Sobre Nós.
</p>
";
   ?&gt;
Enter fullscreen mode Exit fullscreen mode

Acesse http://localhost/about.php no seu navegador. Você deve ver a página "Sobre Nós" com o título e o parágrafo.

  1. Conectando ao banco de dados: Crie um novo arquivo connect.php no diretório do seu projeto e adicione o seguinte código:
<?php
   $servername = "localhost";
   $username = "root";
   $password = "your_password";
   $dbname = "mydatabase";

   // Cria uma conexão
   $conn = new mysqli($servername, $username, $password, $dbname);

   // Verifica a conexão
   if ($conn->
connect_error) {
       die("Falha na conexão: " . $conn-&gt;connect_error);
   }

   echo "Conexão bem-sucedida!";
   ?&gt;
Enter fullscreen mode Exit fullscreen mode

Acesse http://localhost/connect.php no seu navegador. Você deve ver a mensagem "Conexão bem-sucedida!".

Conclusão

Configurar um servidor local no Linux usando Nginx, MySQL e PHP permite que você crie um ambiente de desenvolvimento potente e eficiente. Ao seguir as etapas descritas acima, você pode configurar um ambiente local completo para desenvolver e testar suas aplicações web.

Boas Práticas

  • Segurança: Ao configurar seu ambiente local, é importante garantir a segurança do servidor e do banco de dados. Certifique-se de usar senhas fortes e configure o firewall para bloquear acessos não autorizados.
  • Controle de versão: Utilize um sistema de controle de versão, como Git, para rastrear as alterações no seu código e facilitar a colaboração com outros desenvolvedores.
  • Testes: Execute testes unitários e de integração para garantir a qualidade do código e evitar erros.
  • Documentação: Documente seu código e a configuração do seu servidor para facilitar a manutenção e a resolução de problemas.

Recursos Adicionais

Com este guia, você pode começar a desenvolver suas aplicações web no conforto do seu ambiente local. Experimente, explore e divirta-se!

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Terabox Video Player