Articles of tomcat7

tomcat不能将端口8080更改为80

我想将端口8080更改为默认的HTTP端口(80),以将Jersey应用程序用作HTTP Restful API。 因此,我将端口从8080更换为80(在/etc/tomcat7/server.xml ),并将其configuration为使用AUTHBIND( /etc/defaults/tomcat7 )。 重新启动服务后,我在/var/log/tomcat7/catalina.out发现了这个奇怪的错误。 有人可以翻译这个错误? 为什么tomcat无法创build套接字? 我使用的是Ubuntu 14.04和tomcat7。 INFO: Initializing ProtocolHandler ["http-bio-80"] Jul 25, 2014 4:08:28 AM org.apache.coyote.AbstractProtocol init SEVERE: Failed to initialize end point associated with ProtocolHandler ["http-bio-80"] java.net.SocketException: No such file or directory at java.net.PlainSocketImpl.socketBind(Native Method) at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:376) at java.net.ServerSocket.bind(ServerSocket.java:376) at java.net.ServerSocket.<init>(ServerSocket.java:237) at java.net.ServerSocket.<init>(ServerSocket.java:181) at org.apache.tomcat.util.net.DefaultServerSocketFactory.createSocket(DefaultServerSocketFactory.java:49) at org.apache.tomcat.util.net.JIoEndpoint.bind(JIoEndpoint.java:397) at […]

Tomcat中的redirect端口是什么?

很难理解tomcat文档,查看server.xml,你会发现一些端口可能很难理解,因为在文档中没有很好地解释它。 例如,这个行在configuration文件server.xml <Connector port="8345" protocol="AJP/1.3" redirectPort="9875" /> 在这里你可以find另一个redirect端口: <Connector executor="tomcatThreadPool" port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> 我明白连接器端口的作用。 在第一种情况下,你使用它来在apache中创build一个工作者,然后在那里发送它,然后你打开一个端口直接访问tomcat。 但是,当涉及redirect端口的事情变得模糊。 下面是tomcat文档给出的关于ajp端口的解释: 如果此连接器支持非SSL请求,并且收到匹配需要SSL传输的请求,Catalina将自动将请求redirect到此处指定的端口号。 我总是select一个超过1024的随机redirect端口,它的工作原理, 但是什么时候这会实践呢? 如何知道请求何时需要SSL传输? 我有一个运行tomcat模块的卫星服务器。 这个模块通过从主服务器将stream量redirect到带有apache的ajp连接器,反之亦然。 在主服务器中,https是在apache中强制执行的。 这是否意味着所有的请求被发送到卫星服务器encryption或纯文本? 我知道,如果我通过端口8080访问卫星服务器,它没有encryption,但我想知道这是否适用于redirect到主服务器的stream量,以及这个redirect端口在哪里生效。

在Tomcat7中设置JENKINS_HOME?

我试图在Ubuntu上的Tomcat7中设置Jenkins。 我安装了Tomcat7并部署了jenkins.war ,现在我在http://myhost:8080/jenkins看到Jenkins的主页,但是它试图在/usr/share/tomcat7/.jenkins上创buildJenkins目录,出于安全原因。 我已经创build了/srv/jenkins并赋予了tomcat7组权限,并且想要将JENKINS_HOME设置JENKINS_HOMEpath。 我试过把它添加到/etc/tomcat7/server.xml的tomcatconfiguration中: <GlobalNamingResources> <Environment name="JENKINS_HOME" value="/srv/jenkins" type="java.lang.String" override="false"/> <!– Default settings –> 我也试着将它添加到ROOT/META-INF/context.xml的自动创build的上下文文件中(据我所知,没有$CATALINA_HOME/conf )。 <Context path="/" antiResourceLocking="false" > <Environment name="JENKINS_HOME" value="/srv/jenkins/" type="java.lang.String"/> </Context> 但即使重新启动tomcat7我仍然得到相同的结果(试图使用/usr/share/tomcat7/.jenkins )。 我需要在Tomcat7中为JENKINS_HOME设置环境variables?