comment découvrir la version de Tomcat en cours d’exécution

J’essaie de faire fonctionner Appfuse + tomcat + jRebel.

Appfuse par défaut utilise Cargo pour télécharger tomcat (version 7.0.33) et y déployer l’application. Je souhaite utiliser un tomcat déjà installé (version 7.0.27) au lieu de celui téléchargé. J’ai fait le changement en suivant la FAQ appfuse .

Après avoir déployé avec mvn cargo:run , comment puis-je savoir que le tomcat en cours d’exécution est bien 7.0.27?

J’avais l’habitude de taper une URL incorrecte (ex. Localhost: 8080 / dfsfsdf ) pour la voir dans la page d’erreur, mais maintenant, elle ne montre rien.

Mon $CATALINA_HOME pointe vers mon propre tomcat 7.0.27. désolé j’ai oublié de mentionner, c’est pour Windows

Mettre à jour:

Étant donné que cette question était devenue en quelque sorte populaire, je voudrais expliquer pourquoi cette réponse acceptée. simple, c’était le premier qui résolvait mon problème.

En regardant le titre de la question, @Tech Junkie et @CPU 100 ont vraiment la meilleure réponse, mais pas pour le scénario auquel j’ai été confronté. (Je voulais savoir si mvn cargo:run lance mon tomcat installé ou un tomcat “incorporé dans un projet”) :)

Si vous pouvez télécharger un fichier JSP, vous pouvez imprimer des informations comme dans cet exemple: bestdesigns.co.in/blog/check-jsp-tomcat-version

Enregistrez ce code dans un fichier appelé tomcat_version.jsp:

  Tomcat Version : <%= application.getServerInfo() %>
Servlet Specification Version : <%= application.getMajorVersion() %>.<%= application.getMinorVersion() %>
JSP version : <%=JspFactory.getDefaultFactory().getEngineInfo().getSpecificationVersion() %>

Lorsque vous accédez à http://example.com/tomcat_version.jsp , la sortie doit ressembler à:

 Tomcat Version : Apache Tomcat/5.5.25 Servlet Specification Version : 2.4 JSP version: 2.0 

Merci! 🙂

Bien que ce ne soit pas récent, je pensais que ma réponse pouvait encore aider les autres: CD to server / lib et exécuter la commande suivante:

 java -cp catalina.jar org.apache.catalina.util.ServerInfo 

et c’est tout.

 Server version: Apache Tomcat/7.0.30 Server built: May 23 2013 02:54:10 Server number: 7.0.30.0 OS Name: Linux OS Version: 3.13.0-36-generic Architecture: amd64 JVM Version: 1.7.0_65-b32 JVM Vendor: Oracle Corporation 
  1. Essayez d’parsingr ou d’exécuter le répertoire tomcat_home / bin et recherchez un script nommé version.sh ou version.bat en fonction de votre système d’exploitation.
  2. Exécutez le script ./version.sh ou version.bat

S’il n’y a pas de version.bat ou version.sh, utilisez un outil pour décompresser les fichiers JAR (\ tomcat \ server \ lib \ catalina.jar) et recherchez le fichier org \ apache \ catalina \ util \ lib \ ServerInfo.properties. la version définie sous “server.info =”.

exécuter le script dans votre répertoire tomcat/bin :

 sh tomcat/bin/version.sh Server version: Apache Tomcat/7.0.42 Server built: Jul 2 2013 08:57:41 Server number: 7.0.42.0 OS Name: Linux OS Version: 2.6.32-042stab084.26 Architecture: amd64 JVM Version: 1.7.0_21-b11 JVM Vendor: Oracle Corporation 

Vous pouvez simplement ouvrir http://localhost:8080/ dans votre navigateur Web, ce qui ouvrira la page d’accueil de Tomcat qui montre la version de Tomcat en cours d’exécution:

 Apache Tomcat/7.0.42 
  • Je suppose que votre Tomcat s’exécute sur le port 8080

La version de Tomcat en cours d’exécution

Si vous définissez la variable d’environnement -% CATALINA_HOME%, Windows:

 >> cd %CATALINA_HOME%\bin >> version 

Alternativement,

 java.exe -cp lib\catalina.jar org.apache.catalina.util.ServerInfo 

MY SETTING — J’espère que le vôtre sera comme suit

 %CATALINA_HOME% --- C:\Program Files\Tomcat\apache-tomcat-8.0.28 

SORTIE

Version du serveur: Apache Tomcat / 8.0.28 Serveur construit: Oct 7 2015 18:25:21 UTC Numéro de serveur: 8.0.28.0 Nom du système d’exploitation: Windows 7 Version du système d’exploitation: 6.1 Architecture: JVM amd64 Version: 1.8.0_111-b14 Fournisseur JVM: Oracle Corporation

Pour connaître la version de Tomcat, recherchez ce fichier – version.sh pour * nix ou version.bat pour Windows. Ce fichier version.sh se trouve normalement dans le dossier bin Tomcat.

 phpmongodb@kumar:/usr/share/tomcat7/bin$ ./version.sh 

Remarque

Si vous ne savez pas où se trouve le fichier version.sh, essayez cette commande:

 sudo find / -name "version.sh" 

Découvrez tout sur Tomcat7.

 sudo find / -name "tomcat7" 

Utilisation des notes de version

Dans le dossier Tomcat principal, vous pouvez trouver le fichier RELEASE-NOTES qui contient les lignes suivantes (~ ligne 20-21):

  Apache Tomcat Version 8.0.22 Release Notes 

Ou vous pouvez obtenir les mêmes informations en utilisant la ligne de commande :

  • Windows :

     type RELEASE-NOTES | find "Apache Tomcat Version" 

    Sortie:

      Apache Tomcat Version 8.0.22 
  • Linux :

     cat RELEASE-NOTES | grep "Apache Tomcat Version" 

    Sortie:

      Apache Tomcat Version 8.0.22 

Pour windows machine

 bin>version.bat Using CATALINA_BASE: "C:\apache-tomcat-7.0.53" Using CATALINA_HOME: "C:\apache-tomcat-7.0.53" Using CATALINA_TMPDIR: "C:\apache-tomcat-7.0.53\temp" Using JRE_HOME: "C:\Program Files\Java\jdk1.8.0_65" Using CLASSPATH: "C:\apache-tomcat-7.0.53\bin\bootstrap.jar;C:\apache-tomcat-7.0.53\bin\tomcat-juli.jar" Server version: Apache Tomcat/7.0.53 Server built: Jan 01 2014 06:20:16 Server number: 7.0.53.0 OS Name: Windows 10 OS Version: 10.0 Architecture: amd64 JVM Version: 1.8.0_65-b17 JVM Vendor: Oracle Corporation 

Pour machine Linux

 # ./version.sh Using CATALINA_BASE: /usr/epramaan/apache-tomcat-7.0.56 Using CATALINA_HOME: /usr/epramaan/apache-tomcat-7.0.56 Using CATALINA_TMPDIR: /usr/epramaan/apache-tomcat-7.0.56/temp Using JRE_HOME: /usr/java/jdk1.7.0_71/jre Using CLASSPATH: /usr/epramaan/apache-tomcat-7.0.56/bin/bootstrap.jar:/usr/epramaan/apache-tomcat-7.0.56/bin/tomcat-juli.jar Server version: Apache Tomcat/7.0.56 Server built: Sep 26 2014 12:08:24 Server number: 7.0.56.0 OS Name: Linux OS Version: 2.6.32-431.el6.x86_64 Architecture: amd64 JVM Version: 1.7.0_71-b14 JVM Vendor: Oracle Corporation 

Si Tomcat est installé en tant que service:

 #sudo /etc/init.d/tomcat version 

exécuter le suivant

 /usr/local/tomcat/bin/catalina.sh version 

sa réponse sera quelque chose comme:

 Using CATALINA_BASE: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /var/tmp/ Using JRE_HOME: /usr Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar Using CATALINA_PID: /var/catalina.pid Server version: Apache Tomcat/7.0.30 Server built: Sep 27 2012 05:13:37 Server number: 7.0.30.0 OS Name: Linux OS Version: 2.6.32-504.3.3.el6.x86_64 Architecture: amd64 JVM Version: 1.7.0_60-b19 JVM Vendor: Oracle Corporation 

Si Tomcat est installé en tant que service, essayez:

 sudo /etc/init.d/tomcat version 

Remplacez “tomcat” par le nom actuel du service.

Je sais que c’est peut-être trop tard pour cela, mais cela pourrait être utile: si vous essayez de connaître la version du serveur Apache Tomcat à partir du code Java, vous pouvez utiliser:

à partir d’un HttpServlet:

 protected void doGet(HttpServletRequest request, HttpServletResponse response) { getServletContext().getServerInfo() } 

à partir d’un ServletContextListener:

 public void contextInitialized(ServletContextEvent event) { event.getServletContext().getServerInfo(); } 

Une autre option est de consulter les notes de publication de tomcat, applicables à linux / window.

 {Tomcat_home}/webapps/ROOT/RELEASE-NOTES.txt 

Entrez 404.jsp ou non-existent.jsp .

Obtenez le numéro de version Tomcat / JBoss au bas de la page.

Pour sécuriser Tomcat contre les pirates, il est recommandé d’essayer quelques étapes pour masquer les informations de version de Tomcat. Le projet OWASP suggère quelques étapes. https://www.owasp.org/index.php/Securing_tomcat . Si une installation tomcat est ainsi protégée, seule une des réponses ci-dessus affichera la version de tomcat.
c’est à dire passer par le fichier $ TOMCAT_HOME \ RELEASE-NOTES où le numéro de version est clairement annoncé.

J’avais un tel serveur protégé et seul le fichier RELEASE-NOTES révélait la version du tomcat. toutes les autres techniques ont échoué à révéler les informations de version.

Nous fonctionnons dans un environnement Windows et je devais trouver un moyen d’obtenir la version de Tomcat en dehors de l’environnement Java. Sans connaître la version, je n’ai pas pu déterminer les répertoires. J’ai finalement trouvé que le meilleur moyen était d’interroger le service Tomcat en utilisant:

C: \ temp> sc query | trouver / je “tomcat”
SERVICE_NAME: Tomcat6
DISPLAY_NAME: Apache Tomcat 6.0 Tomcat6

Ouvrez votre page d’accueil tomcat (généralement localhost:8080 )

Vous verrez quelque chose comme ceci:

entrer la description de l'image ici

Gestionnaire de tâches Windows> Processus> recherchez tomcat> clic droit> ouvrir l’emplacement du fichier> si vous exécutez Tomcat7w.exe, il est visible à la description.

Tomcat devrait s’exécuter pour être visible dans Processus si ce n’est pas sous Windows Vista / 7, allez dans le gestionnaire de tâches> onglet (services) recherchez tomcat lancez-le, puis processus.

Vous pouvez trouver les informations sur le serveur via sa page d’état:

{running-tomcat-url} / manager / status

Sur cette page, vous pouvez voir la version de Java sur laquelle Tomcat s’exécute

Note: J’ai également collé cette réponse sur le problème de compatibilité Tomcat6 et JRE7. Version major.minor non prise en charge 51.0

exécuter sur le terminal du serveur Unix

 w3m http://localhost:8080/ 

pour quitter appuyez sur q et suivant y