Articles in this section

Plesk is not accessible: count(): Argument #1 ($value) must be of type Countable|array, false given

Plesk for Windows kb: technical

Symptoms

  • Plesk Panel is inaccessible with:

    PLESK_ERROR: count(): Argument #1 ($value) must be of type Countable|array, false given

  • When running repair installation, the operation fails with (debug enabled):

    PLESK_ERROR: C:\> plesk repair installation
    TypeError: count(): Argument #1 ($value) must be of type Countable|array, false given
    file: C:\Program Files (x86)\Plesk\admin\plib\PHostingManager\IIS.php
    line: 1827
    code: 0
    trace: #0 C:\Program Files (x86)\Plesk\admin\plib\DefPackageMng.php(373): PHostingManager_IIS::hasHostingsWithoutIPv4Address()
    #1 C:\Program Files (x86)\Plesk\admin\plib\DefPackageMng.php(43): DefPackageMng->_parseXMLData(string '<?xml version="1.0" encoding="utf-8"?>
    <packages updateTime="2024-05-18 12:46:22"><type name="antiv...')
    #2 C:\Program Files (x86)\Plesk\admin\plib\DefPackageMng.php(25): DefPackageMng->__construct(string '<?xml version="1.0" encoding="utf-8"?>
    <packages updateTime="2024-05-18 12:46:22"><type name="antiv...')
    #3 C:\Program Files (x86)\Plesk\admin\plib\Service\Driver\Packages\Windows.php(206): DefPackageMng::make(boolean false)
    #4 C:\Program Files (x86)\Plesk\admin\plib\Service\Driver\Packages\Windows.php(186): Service_Driver_Packages_Windows->_getDefpackageMng()
    #5 C:\Program Files (x86)\Plesk\admin\plib\Service\Capability\Packages\Windows.php(203): Service_Driver_Packages_Windows->getAvailableWebmailTypes()
    #6 C:\Program Files (x86)\Plesk\admin\plib\api-common\cuRepair.php(499): Service_Capability_Packages_Windows->getAvailableWebmailTypes()
    #7 C:\Program Files (x86)\Plesk\admin\plib\api-common\cuRepair.php(1061): cuRepair->getAvailableWebmailTypesString()
    #8 C:\Program Files (x86)\Plesk\admin\plib\api-common\cuRepair.php(1109): cuRepair->registerAdditionalWindowsOptions()
    #9 C:\Program Files (x86)\Plesk\admin\plib\api-common\cuRepair.php(31): cuRepair->registerOptions()
    #10 C:\Program Files (x86)\Plesk\admin\plib\api-common\CuExecutor.php(61): cuRepair->__construct(NULL null)
    #11 C:\Program Files (x86)\Plesk\admin\plib\api-common\CuExecutor.php(131): CuExecutor->execUtil(string 'cuRepair', string 'execute')
    #12 C:\Program Files (x86)\Plesk\admin\plib\api-cli\CliUtilityRunner.php(28): CuExecutor->run()
    #13 C:\Program Files (x86)\Plesk\admin\plib\api-cli\CliUtilityRunner.php(37): CliUtilityRunner->run()
    #14 C:\Program Files (x86)\Plesk\admin\plib\cu\repair.php(3): require_once(string 'C:\Program Files (x86)\Plesk\admin\plib\api-cli\CliUtilityRunner.php')
    count(): Argument #1 ($value) must be of type Countable|array, false given

Cause

The file C:\Program Files (x86)\Plesk\admin\db\defpackagemng.xml is corrupted.

Resolution

  1. Connect to the Plesk server via RDP.
  2. Rename the file executing the command:

    C:\> ren C:\Program Files (x86)\Plesk\admin\db\defpackagemng.xml C:\Program Files (x86)\Plesk\admin\db\defpackagemng.bkp

  3. Regenerate the file:

    C:\> plesk sbin defpackagemng --get --force

Was this article helpful?

Comments

0 comments

Please sign in to leave a comment.