Plesk

Unable to manage Plesk domains with Forwarding hosting type

Symptoms

Symptoms vary depending on the domain type and Plesk version:

  1. The following error occurs in Plesk:

    external error: Unable to find service node for web service on domain with id=10

  2. Empty /usr/local/psa/admin/conf/generated/<file_name>.include files for domains with 'Forwarding' hosting type

  3. No new /usr/local/psa/admin/conf/generated/<file_name>.include files generated after changing properties of domains with Forwarding hosting type

Cause

The psa.IpAddressesCollections table in Plesk is corrupted.

Diagnostics

  1. Connect to the server via SSH.

  2. Perform the appropriate diagnostic actions according to the following conditions:

    Run the following command:

    # plesk db 'select * from IpAddressesCollections where ipAddressId = 0'
    +----------------+-------------+
    | ipCollectionId | ipAddressId |
    +----------------+-------------+
    | 11             |           0 |
    | 12             |           0 |
    | 13             |           0 |
    | 15             |           0 |
    | 18             |           0 |
    | 19             |           0 |
    | 20             |           0 |
    +----------------+-------------+

    If ipAddressId value is 0, then references between domains and IP addresses have been broken.

Resolution

Login to the server over SSH

    1. Back up the Plesk database with the below command before making any modifications:

      # plesk db dump psa > psa`date +%F_%H.%M`.sql

    2. Determine which ipAddressId should correspond to which ipCollectionId:

      # plesk db "select domains.displayName as 'Domains', DomainServices.type as 'Service', IpAddressesCollections.ipCollectionId as 'IpAddressesCollections.ipCollectionId', IpAddressesCollections.ipAddressId as 'Current value', dom_param.val as 'Should be' from domains, DomainServices, IpAddressesCollections, dom_param where IpAddressesCollections.ipAddressId = 0 and IpAddressesCollections.ipCollectionId = DomainServices.ipCollectionId AND DomainServices.dom_id = domains.id AND dom_param.dom_id = domains.id and dom_param.param like 'ip%_addr_id'"
      +----------+--------+---------------------------------------+--------------+-----------+
      | Domains  |Service | IpAddressesCollections.ipCollectionId | Current value| Should be
      +----------+--------+---------------------------------------+--------------+-----------+
      | dom3.tld | mail   |                                    19 |            0 |         3 |
      | dom3.tld | web    |                                    20 |            0 |         3 |
      | fwd.com  | mail   |                                    13 |            0 |         1 |
      | fwd.com  | web    |                                    15 |            0 |         1 |
      | fwd2.com | web    |                      &nbsp…

Exit mobile version