Como instalar Laravel no Ubuntu com Apache em 2024

O universo tecnológico está cheio de frameworks PHP para você escolher à vontade. O problema é que a maioria deles, por conta da sua estrutura, pode ter limitações ao ler o código-fonte da sua aplicação. Isso pode ser um problema caso você esteja pensando em documentar os códigos de uma aplicação.  

Felizmente, existe uma alternativa: o Laravel, em conjunto com o Apache, é uma ótima ideia! Esse framework PHP pode organizar e compactar códigos de aplicação de uma maneira muito eficiente. No tutorial de hoje, vamos mostrar como instalar Laravel com Apache no Ubuntu.

Instalando Laravel no Ubuntu com Apache: Visão Geral

Conhecimento necessárioGerenciamento básico de servidor Ubuntu, PHP, Apache
Privilégios necessáriosPrivilégios de usuário root ou sudo
DificuldadeIntermediário
Objetivo principalInstalação do Laravel, configuração do PHP e do Apache
Sistema operacionalUbuntu 22.04 ou posterior

O que é Laravel?

O Laravel é, sem surpresas, um dos frameworks PHP mais populares do mundo. Ele tem funcionalidades tão únicas que acaba se tornando uma das melhores opções para programadores web. 

Ele também tem uma vasto acervo de documentação e trabalha perfeitamente com código-fonte de qualidade, proporcionando uma sintaxe de código bastante expressiva. Em outras palavras, o Laravel é rápido, eficiente e amigável — para mais informações, confira nosso tutorial Laravel completo. Aqui está como instalá-lo no Ubuntu.

Como instalar Laravel no Ubuntu

Antes de começar, você vai precisar se conectar à sua VPS Hostinger usando o SSH. Se precisar de ajuda, aqui vai um tutorial sobre conexão SSH para você realizar o processo sem problemas. 

Seguindo isso, abaixo está o passo a passo para instalar Laravel no seu sistema operacional Ubuntu.

1. Instalando o servidor web Apache

Para o Laravel funcionar, você vai precisar do Apache. Ele é uma das ferramentas de servidor HTTP mais populares da web, sendo que é bem provável que sua VPS já o tenha instalado. 

Por sorte, é bem fácil de checar isso. Assim que se conectar ao servidor usando SSH, verifique se um serviço de sistema Apache existe. Para fazer isso, execute o comando abaixo. 

sudo systemctl status apache2

Caso seu VPS não tenha um serviço Apache ativo , é necessário instalá-lo. Para isso, execute o comando a seguir.

sudo apt install apache2

Por padrão, o Ububtu inicia o Apache já durante o processo de carregamento do sistema. Por outro lado, se você está usando um firewall, é necessário estabelecer uma regra no firewall Ubuntu para que o Apache possa ser executado suavemente. Caso não tenha um firewall instalado, você pode pular esta etapa.

sudo ufw allow “Apache Full”

Depois disso, podemos checar o status do serviço Apache novamente. 

sudo systemctl status apache2
status do servidor Apache no Ubuntu

Por fim, abra um navegador de internet e digite o endereço IP do seu servidor ou o nome de domínio dele.

Se você vir esta tela abaixo, significa que o Apache está instalado e funcionando corretamente.  

tela de confirmação do Apache que está sendo executado

2. Instalando o PHP

O próximo passo é instalar o PHP. Felizmente, o PHP 7 vem por padrão nos repositórios oficiais do Ubuntu, então sua instalação é bastante tranquila: você só precisará instalar a linguagem em si e algum módulo extra. Para fazer isso, execute o comando abaixo.

sudo apt install php libapache2-mod-php php-mbstring php-xmlrpc php-soap php-gd php-xml php-cli php-zip php-bcmath php-tokenizer php-json php-pear

Se o comando digitado resultar em uma mensagem avisando que alguns pacotes não foram encontrados, você precisa atualizar o Ubuntu. Faça isso usando o comando abaixo e, em seguida, execute novamente o comando anterior.

apt-get update 

Agora, podemos testar se o PHP está funcionando corretamente. Para isso, é preciso criar um arquivo no diretório raiz do Apache. Aqui, vamos chamá-lo de teste.php. Execute o comando a seguir.

sudo nano /var/www/html/teste.php

E adicione a chamada para a função phpinfo.

<?php phpinfo(); ?>

Agora, é preciso salvar e encerrar estas ações. Para salvar, digite CTRL + O. E, para encerrar, digite CTRL + X. Em seguida, abra o navegador e vá até http://ip-do-seu-servidor/teste.php.

Se você vir esta tela abaixo, você saberá que o PHP está funcionando como deveria. 

tela de abertura do php confirmada a instalação

3. Baixando e instalando um gerenciador de banco de dados

Se você quer programar usando Laravel PHP no Ubuntu 22.04, é necessário instalar um gerenciador de banco de dados. O Laravel tem suporte a PostgreSQL, MySQL, MariaDB, SQLite e SQL Server — você pode instalar e configurar qualquer um deles. Para o nosso tutorial, vamos usar o MariaDB. Para tanto, use o comando abaixo:

sudo apt install mariadb-server

Depois disso, você pode definir uma senha de root. Para fazer isso, é preciso usar o script mysql_secure_installation. Este passo é opcional, mas recomendamos fazê-lo por questões de segurança.

sudo mysql_secure_installation

Depois de definir uma senha de acesso, o sistema vai começar a fazer fazer perguntas de configuração do banco de dados MariaDB. As respostas que você deve colocar são as que aparecem ao lado de cada linha:

Remove anonymous users? [Y/n] y 
Disallow root login remotely? [Y/n] n 
Remove test database and access to it? [Y/n] y 
Reload privilege tables now? [Y/n] y
tela de confirmação de instalação de banco de dados mariaDB

Pronto, o MariaDB foi instalado com sucesso.

Por outro lado, se você prefere trabalhar com um sistema de gerenciamento NoSQL, leia nosso tutorial sobre como instalar o MongoDB no Ubuntu.

4. Instalando o Composer

O Composer é um gerenciador de PHP que facilita o download de bibliotecas PHP nos nossos projetos. Ele facilita bastante a instalação do Laravel, que é o passo seguinte do nosso tutorial.

Primeiro de tudo, é preciso fazer o download do Composer.

curl -sS https://getcomposer.org/installer | php

Agora, temos que garantir que o Composer pode ser usado por qualquer aplicação e sistema e fazer com que ele seja executável. Os comandos abaixo vão cuidar disso para você.

sudo mv composer.phar /usr/local/bin/composer
sudo chmod +x /usr/local/bin/composer

Dica de Leitura

Confira nosso artigo para saber mais sobre como mudar permissões de usuários no Linux para ter maior controle sobre os usuários no seu sistema.

5. Instalando o Laravel no Ubuntu com Composer

Com o Composer instalado, agora você pode instalar o Laravel. Para tanto, execute o comando abaixo.

composer create-project --prefer-dist laravel/laravel [nome_do_projeto]

É claro que, neste caso, você precisa substituir o trecho [nome_do_projeto] pelo nome da sua aplicação. Para este tutorial, nomeamos o projeto como exemplo.

Dica

Confira nossos planos de hospedagem VPS Laravel, que já vêm com o template do Ubuntu 22.04 com Laravel pré-instalado para um início rápido do seu projeto.

Como usar Laravel para desenvolvimento local   

Para desenvolver aplicações localmente, podemos usar um servidor PHP e especificar o host e a porta do nosso servidor. Para fazer isso, execute os comandos a seguir, trocando o trecho [IP] pelo IP do seu servidor e o trecho [porta] pela porta que você deseja usar. 

cd example
php artisan serve --host=[IP] --port=[porta]

Agora, abra o seu navegador e digite o endereço IP (ou o nome de domínio) e a porta especificada. O endereço será parecido com o mostrado pelo resultado do código acima. 

Se você vir uma tela como a de baixo, significa que você está pronto para usar o Laravel.

tela de confirmação de instalação do Laravel

Como usar Laravel para implantar uma aplicação

Por outro lado, se você for usar seu VPS como um servidor de aplicação Laravel, então você vai precisar fazer alguns ajustes para evitar problemas. 

Primeiro, é necessário mover o diretório de projetos criado anteriormente para a raiz do Apache. Lembre-se: no nosso caso, o nome da pasta é exemplo. Desta forma, execute o comando abaixo.

sudo mv exemplo /var/www/html/

O próximo passo é definir as permissões necessárias para garantir que o projeto funcione bem. Execute os comandos abaixo:

sudo chgrp -R www-data /var/www/html/exemplo/
sudo chmod -R 775 /var/www/html/exemplo/storage

É necessário criar um novo host virtual para o seu projeto. Isso pode ser feito facilmente com os comandos a seguir. 

cd /etc/apache2/sites-available
sudo nano laravel_project.conf

Adicione o código a seguir para criar um novo host virtual. Só se lembre de substituir o trecho dominio.com com o endereço IP do seu servidor. 

<VirtualHost *:80>    
ServerName dominio.com    
ServerAdmin webmaster@dominio.com    
DocumentRoot /var/www/html/exemplo/public    

<Directory /var/www/html/exemplo>        
AllowOverride All    
</Directory>    ErrorLog ${APACHE_LOG_DIR}/error.log    
CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>

Salve o arquivo e o feche.

Agora, desabilite a configuração padrão do arquivo dos hosts virtuais no Apache. Para tanto, use o comando abaixo.

sudo a2dissite 000-default.conf

Habilite o novo host virtual com o comando a seguir.

sudo a2ensite laravel_project

Habilite o módulo de regravação do Apache e, finalmente, reinicie o serviço Apache com os comandos logo abaixo.

sudo a2enmod rewrite
sudo systemctl restart apache2

Agora, abra o navegador de internet e digite o endereço de IP do servidor. Caso você veja a mesma tela do Laravel que viu antes, você já pode começar a trabalhar com o framework.

Como Desinstalar Laravel e Composer

Para desinstalar o Laravel, só é preciso deletar a pasta do projeto criado. Nesse caso, é o próprio Composer. Use o comando abaixo para fazer a desinstalação.   

sudo rm /usr/local/bin/composer

É assim que o Laravel é removido da sua VPS. 

Conclusão

Para desenvolver aplicações web de qualidade, você vai precisar de um framework PHP cheio de funcionalidades. Ainda bem que o Laravel é um deles. Hoje você aprendeu a como instalar Laravel em um computador ou um servidor com Ubuntu 22.04.

Lembre-se: é sempre recomendado consultar a documentação oficial, caso você precise de mais informações ou queira aprender mais sobre o projeto. Divirta-se!

Author
O autor

Andrei L.

Jornalista e conteudista SEO/Localização na Hostinger Brasil. Tem experiência em WordPress e na produção de conteúdos de tecnologia otimizados para conquistar as melhores posições no Google. É fã de games, adora vôlei, ama o inverno e está sempre buscando se aperfeiçoar no Inglês.