Configurando o Nginx para Laravel no Ubuntu e Debian
- 2270
- 222
- Robert Wunsch DVM
O Laravel é uma estrutura popular de aplicativos da Web PHP usada para desenvolver aplicativos da Web robustos e dinâmicos. Quando se trata de implantar um aplicativo Laravel, o nginx é uma escolha popular do servidor da web devido à sua velocidade, estabilidade e escalabilidade. Configurar o nginx para o Laravel é importante para implantações de produção.
Neste tutorial, forneceremos um guia abrangente sobre como configurar o nginx para um aplicativo Laravel.
Etapa 1: Instale o nginx
Antes de configurar o NGINX para o seu aplicativo Laravel, você deve primeiro instalar o Nginx no seu servidor. Você pode instalar o nginx no seu servidor usando o seguinte comando:
Atualização de sudo apt-get
sudo apt-get install nginx
Etapa 2: Instale o PHP
Para executar um aplicativo Laravel no Nginx, você também precisa instalar o PHP, que é a linguagem de script com a qual o Laravel é construído. Você pode instalar o PHP e suas dependências executando o seguinte comando:
Instalação sudo apt-get php php-fpm php-mysql
Este comando instala PHP, o PHP FastCGI Process Manager e a extensão MySQL para PHP.
Depois que a instalação estiver concluída, você precisa configurar o PHP para trabalhar com o nginx. Você pode fazer isso editando o arquivo de configuração PHP-FPM:
sudo nano/etc/php/8.1/fpm/piscina.d/www.conf
Neste arquivo, você precisa atualizar as seguintes configurações:
Usuário = grupo www-data = www-data escuta =/run/php/php8.1-fpm.meia123 | usuário = www-dataGroup = www-datalisten =/run/php/php8.1-fpm.meia |
Essas configurações garantem que o PHP funcione como o mesmo usuário e grupo que Nginx e ouve no soquete correto.
Salve e feche o arquivo quando terminar e reinicie o PHP-FPM para aplicar as alterações:
sudo systemctl reiniciar php8.1-fpm
Com o PHP instalado e configurado, seu servidor nginx agora está pronto para servir aplicativos de Laravel.
Etapa 3: Crie um bloco de servidor nginx
A próxima etapa é criar um bloco de servidor nginx, usado para definir as definições de configuração para um site ou aplicativo específico. Para criar um bloco de servidor para o seu aplicativo Laravel, crie um novo arquivo no diretório/etc/nginx/sites e disponíveis, como segue:
sudo nano/etc/nginx/sites que estão disponíveis/laravel
Neste arquivo, adicione as seguintes definições de configuração:
servidor ouça 80; Exemplo server_name.com; root/var/www/laravel/público; ÍNDICE ÍNDICE.php; Localização / Try_files $ URI $ URI / / ÍNDICE.php?$ query_string; localização ~ \.php $ try_files $ uri = 404; fastcgi_pass unix:/run/php/php8.1-fpm.meia; Índice FastCGI_Index.php; fastcgi_param script_filename $ document_root $ fastcgi_script_name; incluir fastcgi_params;12345678910111213141516171819 | servidor ouça 80; Exemplo server_name.com; root/var/www/laravel/público; ÍNDICE ÍNDICE.php; Localização / Try_files $ URI $ URI / / ÍNDICE.php?$ query_string; localização ~ \.php $ try_files $ uri = 404; fastcgi_pass unix:/run/php/php8.1-fpm.meia; Índice FastCGI_Index.php; fastcgi_param script_filename $ document_root $ fastcgi_script_name; incluir fastcgi_params; |
Nesta configuração, estamos ouvindo na porta 80, definindo o nome do servidor como exemplo.com, e definir o diretório raiz para o aplicativo Laravel. Também estamos especificando o arquivo de índice e definindo o bloco de localização para o aplicativo Laravel. Além disso, estamos definindo o bloco de localização para arquivos PHP e especificando os parâmetros fastcgi.
Etapa 4: Ative o bloco do servidor nginx
Depois de criar o bloco do servidor, você deve habilitá -lo. Para fazer isso, crie um link simbólico do arquivo/etc/nginx/sites que disponível para o diretório habilitado para o/etc/nginx/sites, como segue:
sudo ln -s/etc/nginx/sites-disponível/laravel/etc/nginx/sites-habilitados/
Antes de reiniciar o NGINX, você deve testar a configuração para garantir que não haja erros de sintaxe. Você pode testar a configuração usando o seguinte comando:
sudo nginx -t
Se não houver erros de sintaxe, você poderá reiniciar o nginx usando o seguinte comando:
sudo systemctl reiniciar nginx
Etapa 5: Configurar SSL/TLS
Para proteger seu aplicativo Laravel, você deve configurar SSL/TLS. Para fazer isso, você precisará obter um certificado SSL/TLS de uma Autoridade de Certificação Confiável (CA) e instalá -lo no seu servidor. Depois de obter um certificado, você pode configurar o SSL/TLS adicionando as seguintes definições de configuração ao bloco do servidor:
Ouça 443 SSL; SSL_CERTificate/Path/para/seu/certificado.PEM; ssl_certificate_key/path/to/your/privado.chave;1234 | Ouça 443 SSL; SSL_CERTificate/Path/para/seu/certificado.PEM; ssl_certificate_key/path/to/your/privado.chave; |
Você deve substituir o/caminho/para/seu/certificado.PEM e/PATH/para/seu/privado.Chave com os caminhos para o seu certificado SSL/TLS e chave privada, respectivamente.
Etapa 6: otimizar o desempenho
Para otimizar o desempenho do seu aplicativo Laravel, você pode configurar o Nginx Caching. O cache pode ajudar a reduzir a carga do servidor e melhorar os tempos de carregamento da página. Para ativar o cache, você pode adicionar as seguintes configurações ao bloco do servidor:
Permitindo o cache
O cache pode ajudar a melhorar o desempenho do seu aplicativo Laravel, reduzindo a carga do servidor e melhorando os tempos de carregamento da página. Para ativar o cache no Nginx, você pode adicionar a seguinte configuração ao bloco do servidor:
Localização ~* \.(jpg | jpeg | png | gif | ico | css | js) $ expira 1y; add_header cache-control "público, sem transformação";1234 | Localização ~* \.(jpg | jpeg | png | gif | ico | css | js) $ expira 1y; Add_Header Cache-Control "Public, No Transform"; |
Esta configuração informa ao nginx para cache imagem, css e arquivos javascript por um ano e enviar um cabeçalho de controle de cache "público".
Permitindo a compressão GZIP
A ativação da compactação GZIP também pode ajudar a melhorar o desempenho do seu aplicativo Laravel, reduzindo o tamanho dos arquivos que são transferidos entre o servidor e o cliente. Para ativar a compactação GZIP no NGINX, você pode adicionar a seguinte configuração ao bloco do servidor:
gzip on; GZIP_TYPES TEXT/TEXTO DE PLAY/CSS APLICATIVO/JSON APLICATIVO/JAVASCRIPT TEXT/XML APLICATION/XML APLICATION/XML+RSS Texto/JavaScript;12 | gzip on; gzip_types text/texto simples/aplicativo css/json/javascript text/xml application/xml application/xml+rss text/javascript; |
Esta configuração informa ao Nginx para ativar a compactação GZIP para tipos de arquivos baseados em texto.
Ajustando os processos e conexões dos trabalhadores
Por fim, você pode ajustar os processos e conexões do trabalhador para otimizar o desempenho do seu aplicativo Laravel no Nginx. Isso pode ajudar a garantir que seu servidor possa lidar com um grande número de solicitações sem ficar sobrecarregado. Para ajustar os processos e conexões do trabalhador, você pode adicionar a seguinte configuração ao bloco HTTP no nginx.arquivo conf
trabalhador_processos automaticamente; trabalhador_connections 1024;12 | trabalhador_processos auto; trabalhador_connections 1024; |
Esta configuração informa ao Nginx para detectar automaticamente o número de núcleos da CPU no servidor e usar esse número para os processos do trabalhador. Ele também especifica um máximo de 1024 conexões por processo de trabalhador.
Conclusão
Neste tutorial, fornecemos um guia abrangente sobre como configurar o nginx para um aplicativo Laravel. Cobrimos as etapas para instalar e configurar o nginx, criar um bloco de servidor nginx para Laravel, ativar SSL/TLS e otimizar o desempenho. Seguindo estas etapas, você pode garantir que seu aplicativo Laravel funcione de maneira suave e eficiente no Nginx.
- « Como instalar e configurar Redis no Ubuntu e Debian
- Como obter data e hora atuais em C# (C-Sharp) »