Python: Como executar um servidor HTTP nativo para servir arquivos de uma pasta local
Se você tem vários arquivos de um site em uma pasta e quer servir estes arquivos em um browser com o protocolo http://
ao invés do protocolo file:///
, neste post você vai descobrir como executar um servidor http básico nativo do python.
O python tem um servidor http nativo que pode ser executado em qualquer pasta do seu sistema operacional.
Mas os comandos são diferente para as duas principais versões do Python, a versão 2.* e a versão 3.*.
Servidor HTTP no Python 3.*
Para executar um servidor HTTP no python 3.*, você deve executar o módulo nativo http.server
passando a porta que você quer usar como argumento.
Veja abaixo o comando para executar o servidor http com o python 3.*.
python -m http.server 8080
No exemplo, estamos criando um servidor HTTP na porta 8080.
O argumento
-m
do python é usado para executar pela linha de comando um módulo que não está localizado na pasta atual.. No nosso caso o módulohttp.server
não está na pasta onde estamos executando o comando.
No gif abaixo você pode ver na prática a execução de um servidor HTTP em uma pasta com o Python 3.
Também podemos ver no gif que o servidor serve o arquivo index.html
por padrão, se ele existir na pasta.
Servidor HTTP no Python 2.*
Na versão 2 você consegue o mesmo servidor executando o módulo nativo SimpleHTTPServer
passando a porta que você quer usar como argumento.
Veja abaixo o comando para executar o servidor http com o python 2.*.
python -m SimpleHTTPServer 8000
No exemplo, estamos criando um servidor HTTP na porta 8000.