You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Tomcat9浏览器访问失败求助:连接拒绝与AJP端口初始化异常

解决Tomcat9无法访问(连接被拒绝)的排查步骤

从你的日志来看,核心问题是AJP/1.3的8009端口被占用,导致Tomcat初始化失败——这才是你改了HTTP端口8081还是无法访问的根本原因。下面是具体的排查和解决方向:

1. 排查并释放8009端口

首先确认哪个进程占用了8009端口,然后终止它:

  • Linux/macOS:执行命令
    netstat -tulpn | grep 8009
    # 或者用更高效的ss命令
    ss -tulpn | grep 8009
    
    输出里会显示占用端口的进程ID(PID),用kill -9 <PID>杀掉该进程,再重启Tomcat。
  • Windows:打开命令提示符执行
    netstat -ano | findstr :8009
    
    找到对应的PID后,打开任务管理器,定位该PID的进程并结束任务。

2. 修改AJP连接器端口

如果不想终止占用8009的进程,可以修改Tomcat的AJP端口:
打开Tomcat安装目录下的conf/server.xml,找到AJP连接器的配置段:

<Connector protocol="AJP/1.3" address="::1" port="8009" redirectPort="8443"/>

把port="8009"改成未被占用的端口(比如8010),保存后重启Tomcat。

3. 禁用AJP连接器(如果不需要)

如果你的场景不需要使用AJP协议(比如不需要和Apache HTTP Server等反向代理配合),可以直接禁用它:
在server.xml里,要么给AJP连接器添加enabled="false"属性:

<Connector protocol="AJP/1.3" address="::1" port="8009" redirectPort="8443" enabled="false"/>

要么直接用<!-- -->注释掉整个AJP连接器配置,然后重启Tomcat。

4. 确认Tomcat是否正常启动

解决AJP端口问题后,检查Tomcat的启动日志(catalina.out或logs目录下的日志文件),确认是否出现类似Server startup in XXXX ms的提示——只有Tomcat完全启动成功,HTTP端口才能正常接受请求。

5. 检查防火墙与网络配置

  • 如果是远程服务器:确认服务器防火墙(Linux的firewalld/iptables,Windows防火墙)已经开放8081端口;如果是云服务器,还要检查云平台的安全组规则,允许8081端口的入站流量。
  • 如果是本地访问:尝试用127.0.0.1:8081替代localhost:8081访问,避免localhost解析异常;如果是局域网内访问,要用服务器的局域网IP+8081端口。

6. 验证HTTP连接器配置

打开server.xml检查HTTP连接器的配置,确保:

  • 端口确实是你设置的8081;
  • 没有限制访问地址(比如不要设置address="127.0.0.1",除非只允许本地访问),建议去掉address属性或设置为address="0.0.0.0",这样Tomcat可以接受来自任意IP的请求:
    <Connector port="8081" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443"/>
    

内容的提问来源于stack exchange,提问作者noob_coder

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 08:37:49