Quando si ottiene l'IP con il codice request.META['REMOTE_ADDR']
. Funziona bene sul sistema locale, ma quando viene ospitato su un server web l'ip ottenuto è 127.0.0.1 - Come può essere risolto?Utilizzando Django, perché REMOTE_ADDR restituisce 127.0.0.1 su un server web?
risposta
Il server Web è probabilmente dietro un servizio di bilanciamento del carico. Puoi provare a utilizzare request.META ['HTTP_X_FORWARDED_FOR'].
O meglio, guarda il django book, chapter 15 - Cos'è il middleware? e Supporto proxy inverso (X-Forwarded-For Middleware) sezioni.
Si noti che il middleware X-Forwarded-For è stato deprecato/rimosso dalle versioni di Django recenti, poiché è stato deciso che potrebbe dare agli sviluppatori una falsa sensazione che l'intestazione X-Forwarded-For possa effettivamente essere invocata (che può t). Abbastanza facile da scrivere il tuo; sii consapevole che può essere facilmente falsificato. –
Se si è dietro un proxy e si esegue apache come server Web, è possibile utilizzare mod_rpaf. Il proxy deve solo inviare intestazioni X-Forwarded-For o X-Real-IP.
- 1. remote_addr non restituisce l'indirizzo IPv4
- 2. Django ottiene IP restituisce solo 127.0.0.1
- 3. Express - req.ip restituisce 127.0.0.1
- 4. InetAddress.getLocalHost() restituisce sempre 127.0.0.1
- 5. Qual è la differenza tra l'avvio di un binding server su 0.0.0.0 vs 127.0.0.1?
- 6. Matplotlib: trama interattiva su un server Web
- 7. PHP $ _SERVER ['REMOTE_ADDR'] vuoto
- 8. InetAddress.getLocalHost(). GetHostAddress() restituisce 127.0.0.1 in Android
- 9. Distribuzione di Django su un server Apache
- 10. Bind rails server su 127.0.0.1 per impostazione predefinita
- 11. Come accedere al server web locale Django dal mondo esterno
- 12. Porting Django Project su 1 & 1 Hosting Web server condiviso
- 13. gdb in esecuzione su un server Web
- 14. Esecuzione di Java su un server Web
- 15. django-social-auth: come reindirizzare example.com a 127.0.0.1:8000?
- 16. Come ospitare un sito Web JSP su un server web?
- 17. Impossibile connettersi al server 127.0.0.1:27017
- 18. Perché django bulk_create restituisce oggetti senza pk?
- 19. Accedere al server Web su VirtualBox/Vagrant dal browser host?
- 20. Utilizzo di Django meno il server web
- 21. DNS reindirizza tracker.thepiratebay.org a 127.0.0.1
- 22. Quale server Web stai utilizzando in produzione per ASP.NET Core su un server * nix?
- 23. java InetAddress.getLocalHost(); restituisce 127.0.0.1 ... come ottenere l'IP REALE?
- 24. php/ajax REMOTE_ADDR impostato su IP dell'adattatore di rete fasullo
- 25. PHP $ _SERVER ['REMOTE_ADDR'] mostra IPv6
- 26. Django restituisce l'HTTP 301?
- 27. C# Web - localhost: porta funziona, 127.0.0.1:port non funziona
- 28. Autenticazione per un'applicazione web e mobile su un servizio web RESTfull costruito su django
- 29. Nginx proxy_pass con $ remote_addr
- 30. Informazioni su IP 0.0.0.0 in Django
Come sono le richieste che ottengono dal server Web per l'applicazione Django? –