如何杀死运行在本地主机端口8080上的Apache / PHP服务器?

时间:2018-09-06 17:08:27

标签: php bash apache unix port

我当前正在运行macOS High Sierra版本10.13.6。

这是我在浏览器中加载localhost:8080时得到的: Apache / PHP server screenshot

我不知道如何在此端口上启动该服务器,因为我从未使用过这些技术。我时不时地搞网络开发,但是我不知道服务器启动时我在做什么。我已经研究了如何终止进程,到目前为止,我最接近终止服务器的任务是终止chrome浏览器。我试图找到在端口8080上运行的进程的一些事情:

ps aux | grep 8080
lsof -t -i @localhost:8080
netstat -l -p | grep 8080
lsof -nP -i | grep 8080

我尝试过其他一些看起来相似的东西,但我无法全部回忆。使用lsof命令时,通常必须将sudo放在它们前面,以便显示任何内容。有时候我什么也回来不了,有时候我会得到这样的东西:Terminal output from lsofps aux output where the Postgres processes are

当我退回具有与之关联的PID的进程时,我将尝试使用kill -9 <PID>杀死它们。通常,我必须使用sudo强制执行此操作,因为它给了我一个权限被拒绝的错误(可能不是最佳实践)。当我这样做时,除杀死最初的进程之后进行搜索时,似乎没有其他进程出现。我还尝试结束与ps aux相关的Postgres进程,但这也没有用。好像我发现的任何过程都不正确。有没有人有什么建议可以帮助我找到并杀死托管服务器的进程?

3 个答案:

答案 0 :(得分:0)

在命令行中为:

sudo /usr/sbin/apachectl stop

为防止它在下次重新启动时启动:

sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist

请注意,我不知道在您的系统上还有什么使用apache,所以这可能会破坏事情。

答案 1 :(得分:0)

您可以尝试:

ps -e | grep httpd

这将向您显示apache httpd PID。 另一种方法是使用pstree安装brew

brew install pstree

pstree会将正在运行的进程显示为树。然后,您可以使用以下命令找到 PPID

pstree | grep httpd

然后,您可以使用kill终止该过程。我在 macOS High Sierra 上测试了这两种方法。

答案 2 :(得分:0)

lsof -nP -i | grep "TCP.*:8080.*LISTEN"

使用lsof查找在端口8080上等待连接(“ LISTEN”)的进程。使用该输出中的PID列终止该进程。