web-dev-qa-db-fra.com

Tomcat nécessite-t-il Apache httpd?

Si un fichier war contenant une application Web Java me est attribué et que je souhaite l'exécuter localement, ai-je simplement besoin de Tomcat ou ai-je besoin de Tomcat et / Apache httpd (ou de tout autre serveur Web)? Merci d'avance!

29
IAmYourFaja

Tomcat est son propre serveur Web. Par conséquent, un serveur Web distinct tel qu'Apache n'est pas requis. Cependant, vous voudrez probablement changer le port de Tomcat, car la valeur par défaut est 8080 et les sites Web se trouvent généralement sur le port 80.

Je pense que les gens mettent généralement Apache devant Tomcat pour pouvoir faire des choses comme:

  • Si un site Web a plusieurs instances Tomcat derrière lui.
  • Servir des fichiers statiques d'Apache pour alléger Tomcat.
  • Utilisez les autres fonctionnalités Apache dont vous pourriez avoir besoin (modules).
  • Comme @TacticalCoder le mentionne dans les commentaires, vous devez être root pour pouvoir écouter sur le port 80. Par conséquent, certaines personnes peuvent utiliser Apache comme moyen facile de proxyer les ports 80 à 8080.

Je recommanderais l'approche YAGNI et irais simplement avec Tomcat jusqu'à ce que/à moins que vous ne trouviez une raison pour laquelle vous voulez Apache.

42
Brendan Long

Juste Tomcat. HTTPD n'est jamais nécessaire pour Tomcat.

5
Mike Thomsen

Tomcat est un conteneur de servlets qui possède son propre serveur http. Par conséquent, si vous souhaitez exécuter une guerre, vous n’avez besoin que d’un Tomcat. Toutefois, si vous souhaitez exécuter un site Web contenant uniquement des fichiers statiques (html, js, css), vous devez mieux choisir Apache, même si Tomcat peut le faire

0
doubleview

Vous avez simplement besoin de Tomcat ou de tout autre conteneur de servlets Java (Jetty, résine, etc.).

0
cjstehno