src/Runtime/PhpFpm.php
private function killExistingFpm(): void
    {
        // Never seen this happen but just in case
        if (! file_exists(self::PID_FILE)) {
            unlink(self::SOCKET);
            return;
        }

        $pid = (int) file_get_contents(self::PID_FILE);

        // Never seen this happen but just in case
        if ($pid <= 0) {
            echo "PHP-FPM's PID file contained an invalid PID, assuming PHP-FPM isn't running.\n";
            unlink(self::SOCKET);
            unlink(self::PID_FILE);
            return;
        }

        // Check if the process is running
        if (posix_getpgid($pid) === false) {
            // PHP-FPM is not running anymore, we can cleanup
            unlink(self::SOCKET);
            unlink(self::PID_FILE);
            return;
        }

        echo "PHP-FPM seems to be running already, this might be because Lambda stopped the bootstrap process but didn't leave us an opportunity to stop PHP-FPM. Stopping PHP-FPM now to restart from a blank slate.\n";

        // PHP-FPM is running, let's try to kill it properly
        $result = posix_kill($pid, SIGTERM);
        if ($result === false) {
            echo "PHP-FPM's PID file contained a PID that doesn't exist, assuming PHP-FPM isn't running.\n";
            unlink(self::SOCKET);
            unlink(self::PID_FILE);
            return;
        }

        $this->waitUntilStopped($pid);
        unlink(self::SOCKET);
        unlink(self::PID_FILE);
    }
private function killExistingFpm(): void
    {
        // Never seen this happen but just in case
        if (! file_exists(self::PID_FILE)) {
            unlink(self::SOCKET);
            return;
        }

        $pid = (int) file_get_contents(self::PID_FILE);

        // Never seen this happen but just in case
        if ($pid <= 0) {
            echo "PHP-FPM's PID file contained an invalid PID, assuming PHP-FPM isn't running.\n";
            unlink(self::SOCKET);
            unlink(self::PID_FILE);
            return;
        }

        // Check if the process is running
        if (posix_getpgid($pid) === false) {
            // PHP-FPM is not running anymore, we can cleanup
            unlink(self::SOCKET);
            unlink(self::PID_FILE);
            return;
        }

        echo "PHP-FPM seems to be running already, this might be because Lambda stopped the bootstrap process but didn't leave us an opportunity to stop PHP-FPM. Stopping PHP-FPM now to restart from a blank slate.\n";

        // PHP-FPM is running, let's try to kill it properly
        $result = posix_kill($pid, SIGTERM);
        if ($result === false) {
            echo "PHP-FPM's PID file contained a PID that doesn't exist, assuming PHP-FPM isn't running.\n";
            unlink(self::SOCKET);
            unlink(self::PID_FILE);
            return;
        }

        $this->waitUntilStopped($pid);
        unlink(self::SOCKET);
        unlink(self::PID_FILE);
    }
private function killExistingFpm ( ) : void { // Never seen this happen but just in case if ( ! file_exists ( self :: PID_FILE ) ) { unlink ( self :: SOCKET ) ; return ; } $ pid = ( int ) file_get_contents ( self :: PID_FILE ) ; // Never seen this happen but just in case if ( $ pid <= 0 ) { echo "PHP-FPM's PID file contained an invalid PID, assuming PHP-FPM isn't running.\n" ; unlink ( self :: SOCKET ) ; unlink ( self :: PID_FILE ) ; return ; } // Check if the process is running if ( posix_getpgid ( $ pid ) === false ) { // PHP-FPM is not running anymore, we can cleanup unlink ( self :: SOCKET ) ; unlink ( self :: PID_FILE ) ; return ; } echo "PHP-FPM seems to be running already, this might be because Lambda stopped the bootstrap process but didn't leave us an opportunity to stop PHP-FPM. Stopping PHP-FPM now to restart from a blank slate.\n" ; // PHP-FPM is running, let's try to kill it properly $ result = posix_kill ( $ pid , SIGTERM ) ; if ( $ result === false ) { echo "PHP-FPM's PID file contained a PID that doesn't exist, assuming PHP-FPM isn't running.\n" ; unlink ( self :: SOCKET ) ; unlink ( self :: PID_FILE ) ; return ; } $ this -> waitUntilStopped ( $ pid ) ; unlink ( self :: SOCKET ) ; unlink ( self :: PID_FILE ) ; }
This methods makes sure to kill any existing PHP-FPM process.
This methods makes sure to kill any existing PHP - FPM process .