虽然没有在服务器上运行,但仍然可以执行POST和GET

时间:2017-01-27 11:53:16

标签: bash google-chrome unix postman netstat

在我的服务器计算机上,我有一个响应端口9876的应用程序。

我已使用kill关闭了应用程序。

如果我netstat | grep 9876,则不显示任何流程。

但是,我仍然可以通过端口POST向服务器计算机(来自Postman和Chrome)请求GET9876

这怎么可能?

2 个答案:

答案 0 :(得分:1)

只是netstat没有向您显示侦听套接字/进程

问题sudo netstat -lp | grep 9876,正如Payalord所提到的,如果您不sudo,您只会列出您的用户控制的套接字。最后一列将是PID/Program name,它将帮助您找出谁将此套接字保持打开状态。

man 页面是您的朋友:

   -p, --program
       Show the PID and name of the program to which each socket belongs.

   -l, --listening
       Show only listening sockets.  (These are omitted by default.)

至于避免应用程序产生子流程,你需要对此进行调查,因为这里没有足够的信息来了解它发生的原因以及如何避免它。

答案 1 :(得分:0)

确保您在正确的用户上运行命令,通常最好在root用户上运行命令。

也许最好像这样运行netstat:netstat -tulpn | grep :9876

希望这有助于澄清问题。