33 Stimmen

Django 0.0.0.0:80; kann nicht remote zugegriffen werden

Ich versuche, auf meinen Django-Server von einem anderen Computer im selben Netzwerk zuzugreifen. Ich habe meinen Server eingerichtet und kann alles korrekt anzeigen, indem ich python manage.py runserver verwende und zu http://127.0.0.1:8000 gehe, aber wenn ich versuche, python manage.py runserver 0.0.0.0:80 zu verwenden, kann ich meine Django-Seite nicht von einem anderen Computer aus anzeigen. Der Computer, auf dem der Django-Server gehostet wird, hat die Intranet-IP 192.168.1.146. Auf meinem Sekundärcomputer starte ich einen Browser und versuche, auf http://192.168.1.146:80 zuzugreifen, jedoch ohne Erfolg. Ich habe auch den Port 80 (und auch 8000) weitergeleitet, aber leider ohne Erfolg :( HILFE!

0voto

gtujan Punkte 101

Auf welchem Betriebssystem führst du dies aus? Hast du versucht, den Befehl mit Root-Rechten auszuführen? (vorausgesetzt, du benutzt Ubuntu/Linux)

Versuche stattdessen dies auszuführen:

sudo python manage.py runserver 0.0.0.0:80

0voto

sudo ufw allow 8000/tcp

Sie können dies ausprobieren, es hat auch bei mir funktioniert.

-6voto

Gary D Punkte 1

Soweit ich verstehe, ist 0.0.0.0 eine nicht routbare IP.

Es wird nur auf dem lokalen Rechner funktionieren, wenn Sie eine Socket-Verbindung an die Adresse binden.

1 Stimmen

Eigentlich bedeutet 0.0.0.0 jede mögliche IP. Es ist tatsächlich nicht routbar, hat aber diese besondere Bedeutung.

1 Stimmen

0.0.0.0 bedeutet, sich an alle Schnittstellen zu binden. Lokal wird es sich also an 127.0.0.1 binden und an jede Schnittstelle auf jeder Karte. Es ist auch eine gute Option, wenn Sie hinter einem NAT sind und das NAT Ports an es weiterleitet, da django nicht verwirrt sein wird, warum es mit der falschen IP-Adresse angesprochen wird.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X