关闭 8080 端口上的 tomcat

关闭 8080 端口上的 tomcat

我在关闭 tomcat 服务器时遇到问题。当我输入 localhost://8080 时,它一直显示 tomcat 主页。我也重新启动了系统,但没有帮助。我已经尝试了以下命令,但它没有显示任何可能在端口 8080 上运行的进程(以下命令没有输出任何内容。)

netstat -anp|grep :8080[[:blank:]]

fuser -n tcp 8080

lsof -w -n -i tcp:8080

netstat | grep 8080

我还尝试了 netstat -tulpn,结果显示如下。我没有看到任何在端口 8080 上运行的进程。

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State            PID/Program name
tcp        0      0 0.0.0.0:17500           0.0.0.0:*               LISTEN         2091/dropbox    
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      1046/mysqld     
tcp        0      0 127.0.0.1:53            0.0.0.0:*               LISTEN      7657/dnsmasq    
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      901/cupsd       
tcp        0      0 127.0.0.1:5432          0.0.0.0:*               LISTEN      5704/postgres   
tcp6       0      0 ::1:631                 :::*                    LISTEN      901/cupsd       
udp        0      0 0.0.0.0:5353            0.0.0.0:*                           869/avahi-daemon: r
udp        0      0 0.0.0.0:46045           0.0.0.0:*                           869/avahi-daemon: r
udp        0      0 127.0.0.1:53            0.0.0.0:*                           7657/dnsmasq    
udp        0      0 0.0.0.0:17500           0.0.0.0:*                           2091/dropbox    
udp6       0      0 :::51917                :::*                                869/avahi-daemon: r
udp6       0      0 :::5353                 :::*                                869/avahi-daemon: r

有人能告诉我如何释放 8080 端口吗?我尝试运行 tomcat 的 ./shutdown,但它显示 java.net.ConnectException:连接被拒绝

我猜这是因为已经在端口 8080 上运行了即时程序。

谢谢。

答案1

对我来说很有效,

  1. 在终端中运行:

    fuser -n tcp 8080
    

    现在我们得到了如下输出:

    8080/tcp:            15008
    

    这里 15008 是我们的 apache 运行的地方。

  2. 使用以下方法杀死它:

    kill -9 15008
    
  3. 完毕。

答案2

如果你从软件中心(或通过 apt-get 命令行)安装了 tomcat,那么它应该从标准的 ubuntu 安装目录运行。启动和停止 Tomcat 应该很简单

/etc/init.d/tomcat5.5 start
/etc/init.d/tomcat5.5 stop

也许需要将 5.5 替换为您正在使用的版本。

如果您刚刚下载了 tomcat 并从自定义解压目录运行,Apache 提供的启动和关闭脚本应该可以工作。假设您的 tomcat 位于 $TOMCAT_HOME:

$TOMCAT_HOME/bin/startup.sh
$TOMCAT_HOME/bin/shutdown.sh

如果一切都失败了,你总是可以手动终止所有 java 进程

killall java

或者,如果真的有什么东西卡住了

killall -9 java

最后这些将会终止当前正在运行的所有 java 进程。

答案3

ps -ef |grep 'catalina'

然后获取该 pid

kill -9 $pid

或者如果你想释放 8080 端口

将 tomcat 端口更改为 8080 以外的端口

vi $CATALINA_HOME/conf/server.xml

搜索以下部分,然后将端口号更改为您选择的任何值。

<Connector port="8080" protocol="HTTP/1.1"
           connectionTimeout="20000"
           redirectPort="8443" />

保存更改并重新启动 tomcat。现在您的 8080 端口将可用,因为 tomcat 将运行到您更改的备用端口。

答案4

尝试这个命令可能会帮助你

sudo kill `sudo lsof -t -i:8080`

相关内容