Maison  >  Questions et réponses  >  le corps du texte

java - Transféré par F5, Tomcat utilise un problème de protocole https

Aujourd'hui, un nouveau projet a été lancé et j'ai rencontré un problème. L'entreprise utilise f5 pour le transfert et utilise le protocole https. Cependant, dans notre projet, request.getScheme() obtient http à la place. avec notre code.... , j'ai vérifié le service du tomcat. est-ce que quelqu'un à rencontré ce problème? Comment le résoudre?

过去多啦不再A梦过去多啦不再A梦2702 Il y a quelques jours955

répondre à tous(2)je répondrai

  • 阿神

    阿神2017-05-27 17:43:49

    https est généralement implémenté par un proxy inverse (tel que F5) (c'est-à-dire que le certificat SSL est configuré sur le proxy inverse), et Tomcat lui-même utilise le protocole http.

    Étant donné que le proxy inverse utilise le transfert de couche 7, request.getRemoteAddr()不可能得到用户真实IP地址,所以通常在反向代理那边配X-Forwarded-For,Tomcat这边用request.getHeader("X-Forwarded-For")拿到用户真实IP地址)。同样道理,request.getScheme()也不可能得到用户真实的协议,通常会在反向代理那边配X-Forwarded-Proto这种Header,Tomcat这边用request.getHeader("X-Forwarded-Proto") détermine si l'utilisateur est en statut https.

    répondre
    0
  • 漂亮男人

    漂亮男人2017-05-27 17:43:49

    Je ne comprends pas quel est ton problème. .
    Comment utiliser https quand tomcat n'a pas de certificat ?
    Je n'ai jamais utilisé f5. Un nginx similaire peut désinstaller SSL, c'est-à-dire que votre application n'a pas besoin de connaître https

    répondre
    0
  • Annulerrépondre