Ative o servidor web Python com uma linha de comando

O Python tem um módulo servidor web/http que pode ser ativado a qualquer momento, com uma única linha de comando.
Com ele é possível disponibilizar arquivos locais, através da porta 8000.
Veja como:


python3 -m http.server

Serving HTTP on 0.0.0.0 port 8000 ...
127.0.0.1 - - [23/May/2017 11:13:56] "GET / HTTP/1.1" 200 -
127.0.0.1 - - [23/May/2017 11:13:57] code 404, message File not found
127.0.0.1 - - [23/May/2017 11:13:57] "GET /favicon.ico HTTP/1.1" 404 -
127.0.0.1 - - [23/May/2017 11:13:57] code 404, message File not found
127.0.0.1 - - [23/May/2017 11:13:57] "GET /favicon.ico HTTP/1.1" 404 -
127.0.0.1 - - [23/May/2017 11:15:11] "GET / HTTP/1.1" 200 -

No Python 2.7, o nome do módulo é SimpleHTTPServer:


python2.7 -m SimpleHTTPServer

Preste atenção na caixa das letras.
Para testar, abra o seu navegador e vá para o endereço http://localhost:8000 ou http://127.0.0.1:8000.

janela do navegador exibindo o servidor web do Pyhton.
Servidor web do Python.

Se você não tiver um arquivo index.html, no seu diretório pessoal, todos os arquivos presentes nele serão listados.
O módulo vai servir sempre os arquivos do diretório atual. Portanto, basta executá-lo no local em que se encontram os arquivos que você deseja compartilhar na rede.
Enquanto o servidor estiver no ar, o terminal, onde ele foi executado, ficará sendo alterado — refletindo o andamento do serviço.
Para finalizar o servidor, tecle ‘Ctrl+c’ no console.
python web http server
O terminal, com o servidor em execução, irá exibir informações básicas sobre o seu funcionamento — como os erros 404, os GET e PUSH, endereços IP etc.
É semelhante a rodar o tail em um arquivo de log do Apache.

Por que usar o servidor HTTP embutido no Python?

Uma das vantagens de usar o recurso é que você não precisa instalar ou configurar qualquer coisa para ter um servidor web — semelhante ao Apache — rodando.
Instalações Linux costumam vir com o Python já instalado. Comumente, elas veem com as versões 2.x e 3.x simultaneamente instaladas e prontas para rodar. Ou seja, é menos trabalho ainda.
É uma forma de disponibilizar arquivos de um dos seus diretórios na rede rapidamente, sem configurar nada. Quando não quiser compartilhar mais… tecle ‘Ctrl+c’.

Assinar blog por e-mail

Digite seu endereço de e-mail para assinar este blog e receber notificações de novas publicações por e-mail.

Junte-se a 49 outros assinantes

Deixe uma resposta