web-dev-qa-db-fra.com

Impossible d'accéder à Tomcat à l'aide d'une adresse IP

J'exécute une instance de Tomcat 5.5 (port: 8089) sur Windows 7.

Le serveur fonctionne correctement si j'ouvre http: // localhost: 8089/ mais cela me donne une erreur (connexion refusée) sur http://192.168.1.100:8089/

Je pensais que c'était un problème de pare-feu ... alors je l'ai désactivé, mais je n'ai toujours pas de chance.

Merci d'avance.

Résolu:

ajouté adresse = "0.0.0.0" à la chaîne du connecteur, cela fonctionne! Merci beaucoup!

33
francescou

Vous devez également faire écouter à Tomcat l'adresse 192.168.1.100.

Si vous souhaitez qu'il écoute toutes les interfaces (IP-s), supprimez simplement "address =" de la chaîne du connecteur dans votre fichier de configuration et redémarrez Tomcat.

Ou utilisez simplement votre adresse IP pour écouter cette adresse adresse = 192.168.1.100 dans la chaîne du connecteur

15
McKracken

Vous devez autoriser l'accès basé sur ip pour Tomcat dans server.xml. Par défaut, il est désactivé . Ouvrez le fichier server.xml pour "

<Connector port="8080" protocol="HTTP/1.1" 
           connectionTimeout="20000" 
           URIEncoding="UTF-8"
           redirectPort="8443" />

Ajoutez ici un nouvel attributuseIPVHosts = "true"ainsi il ressemble à ceci,

<Connector port="8080" protocol="HTTP/1.1" 
           connectionTimeout="20000" 
           URIEncoding="UTF-8"
           redirectPort="8443"
           useIPVHosts="true" />

Maintenant, redémarrez Tomcat, cela devrait fonctionner

18
Anto Binish Kaspar

Si vous ne parvenez pas à accéder à Tomcat à distance, il se peut que le port utilisé ne soit pas ouvert sur votre ordinateur. Supposons que vous ayez pris le port 8081.

Sur votre machine Windows:

Ouvrez le Panneau de configuration-> Pare-feu Windows-> Paramètres avancés-> Règles de trafic entrant.

Créer une nouvelle règle: mention Port

Picture1

Configurez votre port, puis arrêtez et démarrez votre Tomcat, qui sera également accessible à distance.

Ce problème de port concerne principalement les machines AWS.

Si cela ne fonctionne toujours pas, veuillez vérifier auprès de votre administrateur que le port sélectionné est ouvert ou non au public, sinon ouvrez-le.

9
Ankit Gupta

Si vous essayez d'accéder à votre application Web qui s'exécute sur le serveur Apache Tomcat, il se peut que Fonctionne parfaitement lorsque vous essayez de l'utiliser http: // localhost: 8080/ , cela ne fonctionnera pas de la même manière si vous essayez d’y accéder via le navigateur de votre appareil mobile, par exemple. chrome en utilisant http: //192.168.x.x: 8080/ Ainsi, si vous souhaitez accéder via l'adresse IP de votre appareil mobile/distant, définissez les paramètres suivants

  1. Ouvrez le fichier server.xml.
  2. Changement 

    <Connector connectionTimeout="20000" port="8080"protocol="HTTP/1.1" redirectPort="8443"/>
    

à.

    <Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" address="0.0.0.0" />
  1. Sauvegarder le fichier
  2. Arrêtez et redémarrez le serveur
  3. Maintenant, accédez à votre appareil mobile en utilisant l'adresse IP http: //192.168.1.X: 8080/

Tu es prêt.

9
Udit Kapahi

Les nouvelles versions des serveurs d'applications ont supprimé la possibilité de liaison à l'ensemble de votre interface réseau et l'ont limitée à l'interface locale (localhost). La raison en était pour la sécurité. D'après ce que je sais, Tomcat et JBoss appliquent les mêmes mesures de sécurité. 

Si vous souhaitez le lier à une autre adresse IP, vous pouvez le définir explicitement dans votre chaîne de connexion:

  • Tomcat: address="192.168.1.100"
  • JBoss: vous passez un -b 192.168.1.100 en tant que ligne de commande. 

N'oubliez pas que la liaison 0.0.0.0 permet à quiconque d'accéder à votre boîte d'accéder à ce serveur. Il sera lié à toutes les adresses. Si c'est ce que vous voulez, utilisez 0.0.0.0; s'il ne l'est pas, spécifiez l'adresse que vous souhaitez explicitement lier.

Assurez-vous simplement de bien comprendre les conséquences qui pèsent sur toutes les adresses (0.0.0.0)

8
Mohamed Mansour

Les pare-feu sont souvent le problème dans ces situations. Personnellement, le pare-feu d’entreprise McAfee était à l’origine de ce problème, même pour les demandes émanant du réseau. 

Désactivez vos pare-feu ou ajoutez une règle pour Tomcat et voyez si cela vous aide.

1
zeroRooter

Je rencontrais également le même problème sur l'instance Amazon Windows EC2 (Windows Server 2012 R2) Ensuite, j'ai découvert que c'était le pare-feu Windows local qui le protégeait. J'ai ouvert le port 80 (port défini pour le site Web) à l'aide de Windows Firewall avec Advance Security. 

Cela a résolu le problème. 

0
Rahul Bagal

Vérifiez votre fonctionnalité Windows-Firewall dans le panneau de configuration. Le port entrant et sortant doit autoriser le port 8089. (ou écrire une nouvelle règle pour cela - Côté droit, actions - nouvelles règles.) Cela a fonctionné pour moi! 

0
Suresh Kumar

Très étrange parce que le pare-feu a causé le problème.

0
amit