From af398ca8b6f487df5b93024aeb3d2ad575a3a514 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mr=C2=B7x?= Date: Wed, 18 Aug 2021 14:05:04 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B9=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Server/ServerManager.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Server/ServerManager.php b/Server/ServerManager.php index 6bdbe0f4..91b6701a 100644 --- a/Server/ServerManager.php +++ b/Server/ServerManager.php @@ -308,6 +308,7 @@ class ServerManager /** * @param $port * @return bool|string + * @throws Exception */ private function checkPortIsAlready($port): bool|string { @@ -317,6 +318,12 @@ class ServerManager $output = explode(PHP_EOL, $output[0]); return $output[0]; } + + $serverPid = file_get_contents(storage('server.pid')); + if (!empty($serverPid)) { + Process::kill($serverPid, SIGTERM); + } + exec('netstat -lnp | grep ' . $port . ' | grep "LISTEN" | awk \'{print $7}\'', $output); if (empty($output)) { return false; @@ -423,7 +430,6 @@ class ServerManager /** * @param Port|Server $server * @param array|null $settings - * @throws NotFindClassException * @throws ReflectionException */ public function bindCallback(Port|Server $server, ?array $settings = [])