Problemas de permissão ao executar o "php artisan serve" na porta 80
Introdução
O artisan serve tem como finalidade rodar o servidor embutido para uma aplicação que utiliza o framework Laravel. Eu já ensinei aqui no blog como Executar o "php artisan serve" em uma porta específica.
As vezes é necessário executar o php artisan serve em uma porta específica, como a porta 80 e afins, porém alguns problemas podem surgir.
O problema
Em distribuições Linux, costuma acontecer um bloqueio ao tentar executar o php artisan serve na porta 80.
Exemplo, ao executar o comando php artisan serve --port=80, recebemos o seguinte erro:
[Thu Dec 24 14:24:07 2020] Failed to listen on 127.0.0.1:80 (reason: Permission denied).
Isso acontece porque, no Linux, somente o usuário root pode abrir conexões da porta 1 até 1024.
Solução
Para resolver esse problema, basta utilizar o sudo ao executar o comando.
Assim:
sudo php artisan serve --port=80
Outras dicas
Existem algumas opções disponíveis ao executar o comando php artisan serve. Você pode conferir alguns truques aqui.