Linux服务器Tomcat端口查看方法详解

XMSDN
Linux服务器Tomcat端口查看是日常运维的基础操作,常用方法有两种:一是通过命令工具快速查看,如使用netstat -tuln | grep 8080ss -tuln | grep 8080(8080为Tomcat默认端口),可实时显示端口监听状态及进程ID;二是定位配置文件,编辑$CATALINA_HOME/conf/server.xml,在`标签中查看或修改port`属性值,若需修改端口,确保新端口未被占用,修改后重启Tomcat服务即可生效,掌握这些方法能快速排查端口冲突及服务异常问题。

在Linux服务器运维中,Tomcat作为常用的Java Web应用服务器,其端口的正确配置与查看是排查服务异常、配置防火墙、确保应用正常访问的关键步骤,本文将详细介绍5种常用的Tomcat端口查看方法,涵盖配置文件检查、命令行工具及日志分析,帮助不同场景下的需求快速定位端口信息。

为什么需要查看Tomcat端口?

Tomcat默认使用3个核心端口:

  • 8080:HTTP服务端口(浏览器访问Tomcat管理页面的默认端口);
  • 8009:AJP端口(用于与Apache等Web服务器集成);
  • 8443:HTTPS服务端口(加密访问端口)。

当出现“无法访问Tomcat页面”“端口冲突”“防火墙拦截”等问题时,首先需要确认这些端口是否正确配置、是否被占用、是否已开放访问权限。

Linux服务器Tomcat端口查看方法详解

方法1:查看Tomcat配置文件(server.xml)

server.xml是Tomcat的核心配置文件,所有端口的配置均在此文件中定义,这是最直接、最准确的端口查看方式

操作步骤:

  1. 定位server.xml文件
    Tomcat安装路径通常为/usr/local/tomcat(或自定义路径,可通过ps -ef | grep tomcat查看进程路径确认),配置文件位于/usr/local/tomcat/conf/server.xml

  2. 编辑并查看端口配置
    使用vi/nanocat命令打开文件:

    vi /usr/local/tomcat/conf/server.xml

    查找<Connector>标签,其中的port属性即为当前配置的端口:

    <!-- HTTP端口,默认8080 -->
    <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
    <!-- AJP端口,默认8009(用于Nginx/Apache反向代理) -->
    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
    <!-- HTTPS端口,默认8443(需配置SSL证书) -->
    <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" keystoreFile="conf/keystore.jks" keystorePass="changeit" clientAuth="false" sslProtocol="TLS" />

    注意:若port属性被注释(<!-- -->)或修改(如改为8081),则以实际配置为准。

方法2:使用netstat命令查看端口占用

netstat是Linux系统自带的传统网络工具,可查看端口监听状态、进程占用情况,适合快速排查端口是否被Tomcat进程监听。

操作步骤:

  1. 安装netstat(若未安装)

    # CentOS/RHEL系统
    yum install net-tools -y
    # Ubuntu/Debian系统
    apt install net-tools -y
  2. 查看Tomcat相关端口

    # 查看所有监听端口,过滤包含"java"的进程(Tomcat为Java进程)
    netstat -antl | grep java

    输出示例:

    tcp6       0      0 :::8080                 :::*                    LISTEN      1234/java
    tcp6       0      0 :::8009                 :::*                    LISTEN      1234/java
    tcp6       0      0 :::8443                 :::*                    LISTEN      1234/java

    关键信息

    • 808080098443为Tomcat监听的端口;
    • LISTEN表示端口处于监听状态(等待连接);
    • 1234/java为端口号对应的进程ID(PID)和进程名(Tomcat为Java进程)。

    若需查看特定端口(如8080),可直接用:

    netstat -antl | grep 8080

方法3:使用ss命令查看端口(推荐)

ssnetstat的替代工具(CentOS 7+/Ubuntu 18.04+默认已安装),查询速度更快、信息更全,推荐优先使用。

操作步骤:

# 查看所有TCP/UDP监听端口,过滤"java"进程
ss -antl | grep java

输出结果与netstat一致,但ss会显示更多连接状态信息(如ESTABLISHEDTIME_WAIT等)。

若需查看PID和进程名(需root权限):

ss -antlp | grep java

输出示例:

tcp6       0      0 :::8080                 :::*                    LISTEN      1234/java (java)

-p参数可显示进程PID和名称,便于确认是否为Tomcat进程。

方法4:查看Tomcat启动日志(catalina.out)

Tomcat启动时,会在日志中打印端口号信息,适合无法直接访问配置文件或需要确认启动端口的情况。

操作步骤:

  1. 定位日志文件
    日志路径:/usr/local/tomcat/logs/catalina.out(若Tomcat通过servicesystemd启动,日志可能在/var/log/tomcat/目录下)。

  2. 过滤端口信息

    grep "Starting ProtocolHandler" /usr/local/tomcat/logs/catalina.out

    输出示例:

    [org.apache.catalina.startup.Catalina] - Starting ProtocolHandler ["http-nio-8080"]
    [org.apache.catalina.startup.Catalina] - Starting ProtocolHandler ["ajp-nio-8009"]
    [org.apache.catalina.startup.Catalina] - Starting ProtocolHandler ["https-nio-8443"]

    日志中的http-nio-8080ajp-nio-8009等明确标识了启动的端口及协议(NIO/BIO/APR)。

方法5:使用lsof命令查看端口占用进程

lsof(list open files)可查看进程打开的文件、端口等资源,适合确认端口是否被Tomcat进程占用。

操作步骤:

  1. 安装lsof(若未安装)

    # CentOS/RHEL系统
    yum install lsof -y
    # Ubuntu/Debian系统
    apt install lsof -y
  2. 查看特定端口占用情况

    # 查看8080端口被哪个进程占用
    lsof -i :8080

    输出示例:

    COMMAND   PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
    java     1234 tomcat   26u  IPv6  12345      0t0  TCP *:http-alt (LISTEN)

    关键信息

    • COMMAND:进程名(java,即Tomcat);
    • PID:进程ID;
    • NAME:端口名称(http-alt为8080的别名)。

    若需查看所有Tomcat占用的端口,可用:

    lsof -i | grep java

综合排查建议

若Tomcat端口无法访问,可按以下步骤排查:

  1. 确认Tomcat进程是否运行ps -ef | grep tomcat(需过滤掉grep自身进程);
  2. 检查端口是否被占用:用ss -antl | grep 8080确认端口是否处于LISTEN状态;
  3. 检查防火墙规则firewall-cmd --list-ports(CentOS)或ufw status(Ubuntu),确保目标端口已开放;
  4. 检查端口冲突:若端口被其他进程占用,可通过kill -9 PID终止进程,或修改Tomcat配置文件中的端口。
方法 优点 缺点 适用场景
查看server.xml 最准确,可直接修改配置 需定位文件,需重启生效 需要修改端口时
netstat命令 传统工具,通用性强 查询速度较慢,信息较少 快速查看端口监听状态
ss命令(推荐) 速度快,信息全,支持现代内核 部分旧系统未安装 日常运维快速排查
查看catalina.out 可确认启动端口,无需额外工具 需日志完整,仅限启动后查看 确认Tomcat实际启动端口
lsof命令 精准定位端口占用进程 需安装工具,需root权限 确认端口是否被Tomcat占用

通过以上方法,可全面掌握Linux服务器Tomcat端口的查看与排查,确保服务稳定运行。

文章版权声明:除非注明,否则均为MSDN原版系统镜像,纯净系统镜像,MSDN.ISO.IMG.WIM.ESD下载原创文章,转载或复制请以超链接形式并注明出处。

取消
微信二维码
微信二维码
支付宝二维码