O servidor de desenvolvimento do Django no Raspberry Pi recusa a conexão

1

Eu tenho um serviço web simples em execução no meu Raspberry Pi, usando o servidor de desenvolvimento do Django (manage.py runserver). Eu sei que está funcionando, porque quando eu executo curl localhost:8000 no Pi, eu recebo o conteúdo HTML do meu site. Quando executo netstat -tnl no pi, recebo o seguinte:

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 127.0.0.1:8000          0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
tcp6       0      0 :::22                   :::*                    LISTEN 

No entanto, quando tento conectar-me ao site de um computador diferente na mesma rede local que o Pi (usando http://<local IP of the pi>:8000 ), recebo connection refused . (Eu tentei os dois curl e um navegador da web.)

Eu me conecto ao Pi exclusivamente através do SSH, e coisas como curl http://www.google.com work, então eu sei que o Pi está conectado à rede.

Eu tenho a versão mais recente do Raspbian no Pi. (Eu apenas reinstalei ontem pensando que poderia corrigir este problema)

Como posso me conectar a este site? Preciso abrir uma porta no Pi ou algo assim?

Não estou interessado em me conectar a esse servidor da web fora da minha rede local, portanto, não acho que eu tenha que lidar com o encaminhamento de porta.

    
por ItsTimaiFool 22.10.2016 / 17:23

1 resposta

2

Por padrão, os servidores de desenvolvimento do Django estão vinculados a 127.0.0.1, como você pode ver no campo Local Address . Significa que só aceita conexões do seu Pi.

Quando você usa 0.0.0.0 ( Wikipedia ), é como curinga, significa que todos na sua rede local podem acessá-lo.

Portanto, para acessar seu servidor de outra máquina, você precisa executar o seguinte comando: python manage.py runserver 0.0.0.0:8000 .

    
por 22.10.2016 / 19:37