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.