comment accéder à mon 127.0.0.1:8000 depuis une tablette android
je développe une page Web à django (sur mon pc avec windows 7) et maintenant j'ai besoin de tester quelques pages dans des tablettes PC. soudain, la pensée est venue si je peux avoir un accès à mon hébergeur local dans windows à partir de tablette android. est-ce possible? Je suis dans la même connexion wifi dans les deux appareils à la maison.
j'ai lu beaucoup de questions et de réponses concernant cette question dans stackoverflow et d'autres endroits, mais aucun d'eux ne m'a donné de solutions concrètes.
j'ai samsung onglet 2 10.1 avec android 4.0.4.
reconnaissant de toute aide, merci
8 réponses
Vous pouvez trouver quelle est l'adresse ip de votre PC avec le ipconfig
commande dans une invite de commande Windows. Puisque vous avez mentionné qu'ils sont connectés via WiFi, cherchez l'adresse IP de l'adaptateur sans fil.
puisque la tablette est également dans ce même réseau WiFi, vous pouvez simplement taper cette adresse dans le navigateur de votre tablette, avec le :8000 ajouté à elle et il devrait tirer vers le haut de la page.
Donc, il ya un couple de questions, il me semble. La question à laquelle la plupart des réponses répondent est la suivante: "comment vous connectez-vous à un autre serveur de votre réseau local?"(ou variantes). Il y a deux réponses, vous pouvez utiliser l'IP de l'ordinateur directement, ou vous pouvez utiliser le nom de l'ordinateur (vous devrez peut-être ajouter .local
). Par exemple, mon ordinateur est xavier.local
.
Le deuxième problème est que vous semblez être l'adressage est que runserver
n'est pas accessible par d'autres ordinateurs sur le réseau (c'est votre question). La raison en est que par défaut le serveur d'exécution de Django ne reconnaît que les requêtes de la machine qui les appelle. Cela signifie que les paramètres par défaut le feraient de sorte que vous ne seriez en mesure d'accéder au serveur à partir de Windows (et ils l'ont fait exprès pour des raisons de sécurité). Pour écouter d'autres demandes, vous avez deux options:
runserver 192.168.1.101:8000
# Only handle requests which are made to the IP address 192.168.1.101
Ou (et c'est plus facile lorsque l'on traite avec plus d'un de l'environnement):
runserver 0.0.0.0:8000 # handle all requests
donc, si votre adresse IP est 192.168.1.101:
runserver # only requests made on the machine will be handled
runserver 127.0.0.1 # only requests made on the machine will be handled
runserver 192.168.1.101 # handles all requests (unless IP changes)
runserver 192.168.1.100 # does not handle any requests (wrong IP)
runserver 0.0.0.0 # handles all requests (even if the IP changes)
je pense qu'il est important de noter que 0.0.0.0
n'est pas, de façon réaliste, une question de sécurité lorsqu'il s'agit d'une machine locale de développement. Il ne devient un problème important que lorsque l'on travaille sur une grande application avec une machine qui peut être adressée à partir du monde extérieur. À moins que vous n'ayez le port forwarding (je le fais), ou quelque chose comme ça, vous ne devriez pas être trop concernés.
127.0.0.1 est une adresse loopback qui signifie, grossièrement," cet appareil"; votre PC et votre tablette android sont des appareils séparés, donc chacun d'eux a sa propre 127.0.0.1. En d'autres termes, si vous essayez d'aller à 127.0.0.1 sur votre onglet Android, il essaie de se connecter à un serveur web sur L'appareil Android, ce qui n'est pas ce que vous voulez.
cependant, vous devriez pouvoir vous connecter via le wifi. Sur votre fenêtre windows, ouvrez une invite de commande et exécutez "ipconfig". Quelque part dans la sortie devrait être l'adresse de votre windows box, probablement 192.168.1.100 ou quelque chose de similaire. Votre tablette devrait pouvoir voir le serveur Django à cette adresse.
Si les deux sont connectés au même réseau, tout ce que vous devez faire est de fournir l'adresse IP de votre serveur dans votre réseau) dans votre application Android.
besoin de connaître l'adresse ip de votre machine .. Assurez-vous que vos deux machines (tablette et ordinateur) connecté au même réseau
192.168.0.22 - dire votre machine à l'adresse
faire ceci :
192.168.0.22:8000 -- à partir de votre tablette
c'est elle !!!
Testé avec EasyPHP DevServer 14.1. Le truc, c'est que vous devez d'abord ajouter votre adresse ip locale du serveur Apache pour l'écouter.
clic droit sur l'icône tray, allez dans "Configuration" -> "Apache" dans le "httpd.config"
# Change this to Listen on specific IP addresses as shown below to
# prevent Apache from glomming onto all bound IP addresses.
#
#Listen 12.34.56.78:80
Listen 127.0.0.1:80
Listen 192.168.0.201:80 <<-- ADD THIS LINE
puis allez dans votre Panneau de configuration et désactivez votre pare-feu Windows ou ajoutez votre adresse Ip Smartphone/Tablette à l'exception.
C'est ça. J'espère que cela aide.
l'adresse IP 192.168.0.201 peut être différente de la vôtre. 192.168.0.X
j'ai moi-même lutté avec ce problème, et je ne pouvais pas comprendre ce que c'était, depuis qu'il a fonctionné parfaitement sur mon iPhone, j'ai décidé d'examiner le problème et de trouver une solution rapide. Ma machine locale est un Mac OSX 10.10+, une option aurait été de démarrer un serveur Apache, mais c'est très peu pratique - changer le DocumentRoot chaque fois que vous voulez vérifier quelque chose rapidement sur votre appareil Android. En outre, changer le DocumentRoot est une douleur dans L'a** sur Mac OSX 10.10.
Si vous souhaitez utiliser:
python -m SimpleHTTPServer
sudo python -m SimpleHTTPServer [ANY PORT YOU WANT, BUT NOT 8000]
j'espère que cette aide.
cheerz -Fosse
bien que ce fil ait été actif il y a longtemps. C'est ce qui a fonctionné pour moi sur windows 10. En la publiant dans les détails. Ça pourrait aider les nouveaux comme moi.
- Ajouter
ALLOWED_HOSTS = ['*']
dans djangosettings.py
le fichier - exécuter django serveur
python manage.py 0.0.0.0:YOUR_PORT
. J'ai utilisé9595
comme mon port. pare-feu pour autoriser l'accès au port:
naviguez vers panneau de configuration -> système et Sécurité -> Pare-Feu Windows Defender
Ouvrir Paramètres Avancés, sélectionnez Règles De Trafic Entrant puis clic droit dessus et sélectionnez Nouvelle Règle
- Sélectionner Port, cliquez ensuite, saisissez le port que vous avez utilisé (dans mon cas
9595
), cliquez sur suivant, sélectionnez autoriser les connexions - cliquez sur suivant à nouveau, puis donnez-lui un nom et cliquez sur suivant pour la dernière temps.
maintenant, trouvez L'adresse ip de votre PC.
- Ouvrir Commande Promt comme administrateur et exécuter
ipconfig
la commande. - Vous pouvez trouver plus d'une adresse ip. Comme je suis connecté par wifi, j'ai pris celui sous adaptateur de réseau sans fil WiFi. Dans mon cas, c'était
192.168.0.100
- notez que cette ip peut changer lorsque vous vous reconnectez au réseau. Si vous avez besoin de le vérifier à nouveau puis.
- Ouvrir Commande Promt comme administrateur et exécuter
maintenant à partir d'un autre appareil (pc, mobile, tablette etc.) connecté au même réseau, accédez à
ip_address:YOUR_PORT
(dans mon cas192.168.0.100:9595
)espérons que vous serez prêt à partir !