所以我在服务器上安装了一个tomcat上的java web应用程序。 如何设置自动启动,以便服务器重新启动时自动启动?
对于有这么多Java经验的人,男孩我感到无能为力 – 这要感谢您对我现在(2010年2月)的JSP环境的帮助。 这是我希望学习的东西: 我是否正确地理解大多数人使用Apache“前端”他们的Tomcat服务器,例如Apache“直接”对Web客户端和“代理”Tomcat服务器? 我是否正确理解Apache无法直接提供JSP服务,但需要服务器(如Tomcat)? 有没有一个Fedora Core的RPM软件包,所以我不必自己创build一个? 或者,Fedora Core的软件包安装程序是否在源代码上做得很好? (有些做,有些则不!) 当我在这里提问时, Tomcat是否有一个可以开始黑客入侵的工作示例,以便快速入门? 如果没有,得到一个很好的build议? 谢谢你们,RT
我想知道如何configurationtomcat 6,以便能够从战争中replace文件 – 例如图像或jsp – 所以我不需要重新启动服务器以保持更新。 我假设我将不得不部署它作为一个目录 – 不只是复制战争文件到Web应用程序? 谢谢。
我想要在同一秒内从同一个ip中删除http请求到同一个url。 这意味着,它的一个家伙猛烈地按F5或一个bot搞砸了我的服务器。 有没有人知道任何库的Java为了避免这一点,或者我应该在内存中开发一个地图检查谁是杀死服务器?
一般来说,我对Tomcat来说很新,所以请指出是否有任何问题。 我的问题是关于更新已经部署的应用程序,使用Tomcatpipe理器。 但首先是第一件事。 我正在使用META-INF / Context.xml来存储数据库连接的连接信息,所以这对于应用程序部署到的每个服务器都是唯一的。 我不确定这是否是最佳的,但这是我知道的唯一方法。 所以,在更新应用程序时,重要的是不要修改此文件,因为我不想每次更新我的应用程序时都必须重新进行所有更改。 为了更新,我正在使用Tomcatpipe理器,而且我尝试了不同的方法,但似乎一切都build立在取消部署的过程上,然后部署新版本。 这样,Context.xml就会被一个空的Context.xml文件移除/replace。 所以我的问题基本上是,我如何更新正在运行的Web应用程序,同时保持Context.xml不变? 顺便说一句,我正在运行Tomcat 6.0.24。
我使用mod_jk设置了一个基本的Apache(2.2.x)和Tomcat(6.0.x)设置,使用worker.properties文件进行负载平衡。 初步testing似乎表明,这个工作比较好,而且很容易build立。 然而; 这个设置很简单的事实让我有点担心。 我们正在使用相同的Web应用程序(部署在2或3个Tomcat实例上)处理100 – 300个并发用户。 我已经做了一些谷歌search,并在这里环顾四周,似乎有不止一种方法来完成这个(在这里的一个例子使用balancer://风格的URL,我从来没有见过在Apacheconfiguration)。 例如,我问自己的一个问题是mod_jk上的负载检测实际上是多么可靠(Busyness,Session,Request等)。 根据您的经验,这种设置在现实世界的场景中certificate是可靠的吗? 任何关于改进的指针,坑坑洼洼或有趣的文学/文章? 我之前和Apache一起工作过,但绝不是专家。 提前致谢。
我有一个静态的公共IP地址的服务器。 我也有一个注册的域名。 为了说明,让我们假设他们是 IP地址: 12.34.56.78 域名: example.com 我有一台机器运行以下内容: 一个网站(在IIS7上)在localhost:80可用localhost:80 JetBrains TeamCity实例(通过Tomcat)在localhost:1234本地可用 一个VisualSVN服务器实例(通过Apache)在localhost:5678/svn可用localhost:5678/svn 我为example.com和以下CNAMEloggingbuild立了一个Alogging: www.example.com builds.example.com sources.example.com 我想configurationTomcat和Apache,使: 如果我将浏览器指向builds.example.com ,那么最终会出现在JetBrains TeamCity实例中, 如果我将我的浏览器指向sources.example.com ,那么我最终将在VisualSVN Server实例上运行。 我想我可以将Apacheconfiguration为vhost example.com:5678/svn指向sources.example.com ,并将以下行添加到Apache httpd.conf文件 Listen 5678 NameVirtualHost *:5678 <VistualHost *:5678> ServerName sources.example.com DocumentRoot /svn </virtualHost> 这打破了VisualSVN的实例,所以我不得不恢复到 Listen 5678 帮帮我!
我有一个不会closures的Tomcat服务器。 它正在侦听正确的端口(8005,为此)接收SHUTDOWN命令。 我可以使用bin/shutdown.sh脚本或通过telnet到该端口并键入SHUTDOWN来发出该命令。 此时,closures端口closures; 我无法再连接到它。 虽然AJP13端口保持打开, 没有任何logging在catalina.out ,事情不closures。 任何人见过这个? 这是在Sparc上的Solaris 10上,如果它很重要的话(可能不会)和Tomcat版本6.0.20。
我们目前使用硬件负载平衡器,然后到Apache,然后通过AJP连接器到Tomcat 5.5。 我们已经决定抛弃阿帕奇出于各种原因 – 在我们目前的系统,它没有提供任何优势。 但是,当我看到在我们这样做的时候发送的头文件时,当你使用tomcat的http连接器时,“Keep-Alive:timeout = 15 max = 96” 有趣的是,我找不到关于tomcat5.5的“keepalivetimeout”的文档,但我可以用tomcat6。 但是我也找不到certificatetomcat5.5不支持这个设置。 这是我的连接器: <Connector port="8090" maxHttpHeaderSize="8192" maxThreads="400" minSpareThreads="150" maxSpareThreads="300" enableLookups="false" connectionTimeout="2" maxKeepAliveRequests="400" disableUploadTimeout="true" /> 所以; 有没有什么办法可以指定keepalive超时如果我们使用http连接器与tomcat 5.5,并强制这个头条目被发送? 只是要清楚 – 我从服务器看到的确切的标题条目是这个与Apache: Keep-Alive: timeout=2, max=100 但从tomcat /狼没有。 我已经看了更多,我不认为保持活着的头条目真的很重要。 这个问题似乎是在tomcat 5.5的http连接器中不支持keep-alive? 他们似乎在tomcat6(+ Java 6)中工作。 谢谢,丹
我想了解一旦Tomcat已经安装在非root用户帐户中,并且在独立模式下,您是否有任何关于如何增强Tomcat非root安装的安全性的提示。 我确切地说这是因为,例如,我对这里给出的答案一点也不感兴趣(因为Java和Tomcat都需要root权限来安装,而且我没有兴趣运行jsvc): 我应该采取哪些步骤来保护Tomcat 6.x? 到目前为止,以下是我为非root用户独立安装Tomcat 6所做的工作: 下载并安装Oracle / Sun提供的JRE .bin (不需要在这里是根目录) (不需要完整的JDK了,现在Jasper [Tomcat的JSP引擎]有自己的编译器吧?) 下载和tar -xzf tomcat 6(不需要在这里root) 设置透明的端口转发(这里必须是root) 请注意,我的发行版是一个Debian版本,我完全没有兴趣下载Debian软件包/ backports /无论什么…因为,我不想要root来安装Java和Tomcat。 我唯一需要成为根的时刻是configuration防火墙透明地做端口转发80 8080和443 8443。 然后,我删除了所有的默认webapps,但只有一个: cd ~/apache-tomcat-6.0.26/webapps rm -rf docs rm -rf examples/ rm -rf manager/ rm -rf ROOT/ 怎么样的目录〜/ apache-tomcat-6.0.26 / webapps /主机pipe理器 ,我需要它或我可以删除它? 然后我评论说: – > 所以,一旦我将Tomcat独立安装在非root用户帐户中(并且考虑到我不想再inputroot密码,并且我不打算安装整个Apache shebang),还有什么可以我做? 还有其他的事情我可以禁用? (怎么样?)