如何configurationtomcat映射域名? 这是我尝试,但它不起作用: server.xml中: <Host name="api.example.com" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <Alias>api.example.com</Alias> <Alias>www.api.example.com</Alias> <Context path="" docBase="" debug="0" privileged="true" /> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="%h %l %u %t "%r" %s %b" resolveHosts="false" /> </Host> 我想让我的url如:www.api.example.com:8080 我该如何解决?
我已经使用Tomcat8在Azure Ubuntu VM中设置了SSLconfiguration。 该服务似乎在端口8443上运行。我已经在Azure上从公共端口443到8443创build了一个端点。 但是,当我运行https://example.com时出现错误ERR_SSL_VERSION_OR_CIPHER_MISMATCH 。 这是server.xml : <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="/home/me/example.com.ssl/example.com.jks" keystorePass="examplePasswd" keystoreType="JKS"/> 证书的别名是“tomcat”。 但是,如果我在连接器中添加keyAlias =“tomcat”,则会出现“未知别名”错误。 我已将所有根证书,中间证书和域证书上传到Azure云服务。 任何想法为什么它失败?
我们有运行Spring Security webapp的tomcats。 https在ELB(443)终止,然后转发到8080上的tomcat。 但是,当我们login时,一个成功的login会将我们redirect到/welcome.html,但是redirect有一个绝对path和一个http绝对path,这是错误的。 在我的单一的tomcat本地开发盒,运行在8443,redirect是一个相对/welcome.html,一切工作正常。 但在AWS上,它被redirect到http://whatever.com/welcome.html 我如何解决这个问题,以保持https?
我正在构build一个基于Spark mini-framework( http://sparkjava.com/ )的API, 每当我通过Maven构build一个包,然后上传到Tomcat 7下的webapps /文件夹。 (真实姓名已被replace为TestProject,以避免泄露任何propriary) 如果我编译该项目并将其命名为TestProject.war,则会加载以下信息: path :/ TestProject 版本 : 没有指定 打开http:// localhost:8080 / TestProject / I后,得到预期的输出: {“code”:400,“message”:“授权信息未在请求中指定”} 如果我然后将文件重命名为TestProject ## 0.0.1-SNAPSHOT_20160308.161909.war并重新启动Tomcat,应用程序将加载以下详细信息: path :/ TestProject 版本 :0.0.1-SNAPSHOT_20160308.161909 不幸的是,当打开相同的URL时,Tomcat返回404: HTTP状态404 – / 键入状态报告 消息 / 说明请求的资源不可用。 阿帕奇 Tomcat的/ 7.0.67 $ cat web.xml <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" > […]
我有一个运行的Tomcat8服务器,目前在开发环境中。 它已经在我们select的端口(8085)上工作了一段时间,并且在我们的networking之外可用(在防火墙上畅通无阻)。 最近我们也决定运行https。 我没有configuration我们的证书,并在server.xml为SSL添加了连接器指令。 不幸的是,它没有按预期工作。 当我尝试通过远程桌面浏览器(实际上 – 在本地主机上)打开它时,SSL工作得很好,它可以在https://localhost:8443和https://domain.com:8443 。 在此之前,一切工作正常,如预期的,但是当我们试图从其他networking访问它不工作,只是当我们尝试访问https://domain.com:8443但http://domain.com:8085时,给出了一个时间http://domain.com:8085在外面工作得很好。 我们确实认为它可能是我们的防火墙的东西,虽然我们已经决定禁用它一段时间,它仍然无法正常工作。 任何想法可能会导致它? <?xml version='1.0' encoding='utf-8'?> <Server port="8005" shutdown="SHUTDOWN"> <Listener className="org.apache.catalina.startup.VersionLoggerListener" /> <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" /> <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" /> <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" /> <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" /> <GlobalNamingResources> <Resource name="UserDatabase" auth="Container" type="org.apache.catalina.UserDatabase" description="User database that can be updated and saved" factory="org.apache.catalina.users.MemoryUserDatabaseFactory" pathname="conf/tomcat-users.xml" /> </GlobalNamingResources> <Service name="Catalina"> <Connector port="8085" […]
我有mod_jk的Apache httpd。 我有长时间闲置期间死亡的连接问题:Apache停止响应,每个HTTP请求挂起15分钟。 我试图closuresmod_jk连接池(与DisableReuse),问题消失。 在Tomcat文档中写道: Using this option will have a strong performance penalty for Apache and Tomcat. Use this only as a last resort in case of unfixable network problems. If a firewall between Apache and Tomcat silently kills idle connections, try to use the worker attribute socket_keepalive in combination with an appropriate TCP […]
我正在使用我们的Debian X64服务器,它是5个域名的端点。 其中一个域名被Apache Web服务器上运行的web项目所利用。 剩下的4个域在单独的Apache Tomcat实例上运行单独的webapps。 目前我正在使用mod_proxy将请求redirect到适当的webapps。 不幸的是,一旦HTTPS问世,这个设置就变得毫无用处。 我无法安装包含所有域的单个https证书。 这样的证书由LetsEncrypt提供。 安装证书后,任何请求将被redirect到一个单一的Tomcat域。 起初我无法理解这种行为,但在检查证书后,我发现它redirect到的域是证书中多个域中的第一个域。 我不知道为什么url没有处理,但这是目前的行为。 我正在考虑使用mod_jk而不是mod_proxy来完成这个任务,但不知道这是否正是我所需要的。 我想知道如何创build一个安装程序,我可以为每个域安装单独的SSL证书。 以下是目前设置的基本概述: Apache2 workers.properties: worker.list = worker_app1 worker.worker_app1.type = lb worker.worker_app1.balance_workers = app1_instance1 worker.worker_app1.sticky_session = true worker.worker_app1.sticky_session_force = false worker.worker_app1.method = busyness worker.app1_instance1.type = ajp13 worker.app1_instance1.host = 127.0.0.1 worker.app1_instance1.port = 8010 worker.app1_instance1.host = localhost worker.app1_instance1.lbfactor = 1 worker.app1_instance1.socket_timeout = 40 worker.app1_instance1.socket_keepalive […]
我有一个web应用程序无法在Linux安装上的Tomcat中启动。 当使用独立的Tomcat时,应用程序可以在不同的机器上安装在同一台机器上。 这个问题似乎是由于Tomcat开始的方式。 当通过包pipe理器安装Tomcat时,使用service tomcat8 start失败; 当通过软件包pipe理器安装Tomcat时,使用/etc/init.d/tomcat8 start失败; 使用独立的tomcat,并从service tomcat8 start (修改/etc/init.d/tomcat8 )失败; 使用独立的tomcat并开始使用./startup.sh工作。 我正在使用Debian 8,Tomcat 8.0.11(但已尝试8.0.9和8.0.11)和各种版本的Java。 该应用程序由于一个名为Atomikos的java事务pipe理器而失败 。 错误是: SEVERE:发送上下文初始化事件给类的监听器实例的exceptionuk.co.prodia.talkingcouch.ApplicationContextListener org.springframework.beans.factory.BeanCreationException:在类path资源[config / applicationContext-db -sessionfactory.xml]:设置bean属性'transactionManager'时,无法parsing对bean'atomikosTransactionManager'的引用; 嵌套的exception是org.springframework.beans.factory.BeanCreationException:在类path资源[config / applicationContext-db-sessionfactory.xml]中定义的名为'atomikosTransactionManager'的bean创build错误:调用init方法失败; 嵌套exception是javax.transaction.SystemException:事务服务没有在org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:359)上运行org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver .java:108)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1481) 有没有人有什么build议?
我有一个在Tomcat上运行Jaspersoft Server的Web服务器,使用Apache和AJP Proxy for SSL。 现在,当我们导航到serverhostname时,它将我们redirect到https:// serverhostname 。 相反,我希望它redirect到https:// serverhostname / jasperserver并直接进入应用程序。 (这个URL与我们的CAS SSO系统链接,所以它会再次redirect到一个login屏幕,但我认为没关系。) 我尝试使用VirtualHost,但它似乎没有做任何事情。 再一次,我可能会错误地使用它。 <VirtualHost *> ServerName serverhostname Redirect permanent / https://serverhostname/jasperserver/ </VirtualHost> 代理代码 <Proxy *> Order deny,allow Allow from all </Proxy> ProxyPass / ajp://serverhostname:8009/ ProxyPassReverse / ajp://serverhostname:8009/ <Location / > Order allow,deny Allow from all </Location> 谢谢你的帮助!
这个服务器运行Apache2,Tomcat6和MySQL(如果这有什么不同,你告诉我:) 使用htop,我可以看到每个核心的CPU负载。 我不明白的是巫婆进程正在使用实际的内核。 在我看来,只有2%应该被使用,任何一个可以解释? 使用sar我看到一个15%的平均CPU负载我只是无法找出实际上造成负载的女巫进程。