我试图得到Appfuse + Tomcat + jRebel工作。

默认情况下,Appfuse使用Cargo下载tomcat。7.0.33)并将应用程序部署到它。我希望使用一个已经安装的tomcat (ver。7.0.27),而不是下载的。我在appfuse FAQ中做了更改。

在使用mvn cargo:run部署后,我如何知道实际运行的tomcat确实是7.0.27?

我曾经键入一个错误的URL(例如:localhost:8080/dfsfsdf),在错误页面中看到它,但现在它什么也没有显示。

我的$CATALINA_HOME指向我自己的tomcat 7.0.27。 抱歉忘了说,这是Windows的。

更新:

既然这个问题在某种程度上变得很流行,我想解释一下为什么这个答案被接受。很简单,这是第一个解决我问题的方法。

我正在看问题的标题,@Tech Junkie和@CPU 100确实有最好的答案,但不是我遇到的情况。(我想知道mvn cargo:run是否运行我安装的tomcat或“项目嵌入”tomcat):)


当前回答

只需启动tomcat并在catalina中搜索“服务器版本名称”。日志,您将获得您的tomcat版本。 例如:

“3月7日,2019年11:25:40 AM org.apache.catalina.startup.VersionLoggerListener日志 服务器版本名:Apache Tomcat/9.0.16"

其他回答

For windows machine 
Go to the tomcat directory C:\apache-tomcat-x.0.xx\bin
    bin>version.bat
    Using CATALINA_BASE:   "C:\apache-tomcat-x.0.xx"
    Using CATALINA_HOME:   "C:\apache-tomcat-x.0.xx"
    Using CATALINA_TMPDIR: "C:\apache-tomcat-x.0.xx\temp"
    Using JRE_HOME:        "C:\Program Files\Java\jdk1.8.0_65"
    Using CLASSPATH:       "C:\apache-tomcat-x.0.xx\bin\bootstrap.jar;C:\apache-tomcat-x.0.xx\bin\tomcat-juli.jar"
    Server version: Apache Tomcat/7.0.53





For Linux Machine 
Go to the tomcat directory /usr/mack/apache-tomcat-x.0.xx/bin
    # ./version.sh
    Using CATALINA_BASE:   /usr/mack/apache-tomcat-x.0.xx
    Using CATALINA_HOME:   /usr/mack/apache-tomcat-x.0.xx
    Using CATALINA_TMPDIR: /usr/mack/apache-tomcat-x.0.xx/temp
    Using JRE_HOME:        /usr/java/jdk1.7.0_71/jre
    Using CLASSPATH:       /usr/mack/apache-tomcat-x.0.xx/bin/bootstrap.jar:/usr/mack/apache-tomcat-x.0.xx/bin/tomcat-juli.jar
    Server version: Apache Tomcat/7.0.56

如果Tomcat作为服务安装:

#sudo /etc/init.d/tomcat version

在Windows上只需要cmd

C:\Program Files (x86)\Extensis\Portfolio服务器\应用程序\tomcat\bin>版本

当前运行的Tomcat版本

如果设置环境变量- %CATALINA_HOME%,则 窗口:

>> cd %CATALINA_HOME%\bin
>> version

另外,

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

我的背景——希望你的背景如下

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

输出

服务器版本:Apache Tomcat/8.0.28 服务器构建:2015年10月7日18:25:21 UTC 服务器号:8.0.28.0 操作系统名称:Windows 7 OS版本:6.1 架构:amd64 JVM版本:1.8.0_111-b14 JVM供应商:Oracle Corporation

为了保护Tomcat不受黑客攻击,建议我们尝试一些隐藏Tomcat版本信息的步骤。OWASP项目提出了几个步骤。https://www.owasp.org/index.php/Securing_tomcat。如果tomcat安装因此受到保护,那么上述答案中只有一个会显示tomcat的版本。例如,查看$TOMCAT_HOME\RELEASE-NOTES文件,其中版本号明确显示。

我有一个这样受保护的服务器,只有RELEASE-NOTES文件显示了tomcat的版本。所有其他技术都无法显示版本信息。

我在Ubuntu 18.04 Linux服务器上工作时遇到了这个挑战。

以下是我的解决方法:

运行下面的命令来确定你的version.sh文件的位置:

sudo find / -name "version.sh"

对我来说,输出是:

/opt/tomcat/bin/version.sh

然后,使用输出,运行文件(version.sh)作为shell脚本(sh):

sh /opt/tomcat/bin/version.sh

这是所有。

我希望这对你们有帮助