获取没有端口号的错误,即使它是tomcat中的默认端口?

时间:2012-03-04 13:20:18

标签: java web-applications tomcat6

我在本地计算机上安装了tomcat。我在server.xml中看到它,我在下面的条目

   <Connector executor="tomcatThreadPool"
           port="${http.port}" 
           protocol="HTTP/1.1" 
           connectionTimeout="20000" 
           redirectPort="${https.port}" 
           acceptCount="100"
           maxKeepAliveRequests="15"/>

其中catalina.properties中的http.port值为8080。

但是每当我尝试访问我的应用程序时,它都会http://localhost/myApp我收到错误            无法连接到localhost但它工作正常http://localhost:8080/myApp。我不知道为什么会这样            端口8080什么时候已经是默认端口?我该怎么办才能提到港口?

2 个答案:

答案 0 :(得分:2)

当您在浏览器的地址栏上编写http://localhost/myApp时,请求始终转到端口80 ,而不是端口8080 。所以默认值是端口80。要使http://localhost/myApp正常工作,您需要安装类似Apache HTTP Server的内容。

然后,您可以借助mod_jk或mod_proxy等连接器配置它,以使用http://localhost/myAppi,而不是http://localhost:8080/myApp。因此,端口80 的请求可以自动转移到端口8080 。 下载mod_jk后,只需将文件mod_jk.so解压缩到Apache HTTP Server的modules文件夹即可。

希望这里写的步骤How to Configure Apache HTTP Server with Apache Tomcat可以帮助你做到这一点。

答案 1 :(得分:1)

在Windows平台上,您所要做的就是将server.xml中的端口号从8080更改为80,然后就完成了。

以上情况并非适用于Unix / Linux环境。更改端口号可能适用于Windows,但我认为在Unix / Solaris上可能有些棘手。

在UNIX下,所有端口&lt; 1024都是“特权”端口。只有root可以打开特权端口。它仍然是可能的,但请记住,它不像在Unix上更改端口号那么简单。

有很多解决方法。

http://raibledesigns.com/rd/entry/how_to_run_tomcat_on

http://mihail.stoynov.com/2011/04/04/howto-start-tomcat-on-port-80-without-root-privileges/

http://java-notes.com/

http://www.klawitter.de/tomcat80.html