• Please be aware: Kaspersky Anti-Virus has been deprecated
    With the upgrade to Plesk Obsidian 18.0.64, "Kaspersky Anti-Virus for Servers" will be automatically removed from the servers it is installed on. We recommend that you migrate to Sophos Anti-Virus for Servers.
  • The Horde webmail has been deprecated. Its complete removal is scheduled for April 2025. For details and recommended actions, see the Feature and Deprecation Plan.
  • We’re working on enhancing the Monitoring feature in Plesk, and we could really use your expertise! If you’re open to sharing your experiences with server and website monitoring or providing feedback, we’d love to have a one-hour online meeting with you.

Issue Plesk Onyx Reseller Login Problem - PleskX\Api\InternalClient::setLogin() (Api.php:35)

Hello guys, I hope some one here could help me.

The error I get when trying to sign in to a Plesk Onyx reseller account it will log me in and show the help on the right hand side, but on the left hand side it just shows the below error.

ERROR: Call to undefined method PleskX\Api\InternalClient::setLogin() (Api.php:35)

I see I get a PHP Fatal error in /usr/local/psa/admin/plib/modules/wp-toolkit/library/Helper/Api.php on line 35, but when I go to edit the file it's not editable. Any one have any problems with this or know how to fix it?

Seems to be trying to load wp-toolkit when it gets the error.

Below is the error I get in /var/log/plesk/panel.log
#################################################
==> /var/log/plesk/panel.log <==

PHP Fatal error: Call to undefined method PleskX\Api\InternalClient::setLogin() in /usr/local/psa/admin/plib/modules/wp-toolkit/library/Helper/Api.php on line 35

ERR [1] ERROR: Call to undefined method PleskX\Api\InternalClient::setLogin() (Api.php:35)

##################################################
 

Attachments

  • Plesk-Onyx-Reseller-Login-Error.jpg
    Plesk-Onyx-Reseller-Login-Error.jpg
    3.9 KB · Views: 3
Try to fix it with

# plesk repair installation
# plesk repair all
# plesk installer --select-release-current --reinstall-patch --upgrade-installed-components
 
I uninstalled WordPress Toolkit and Resellers were allowed to login. But when I installed WordPress Toolkit again Resellers could not Login, same error above. I'll go ahead and try those and see what happens. Seems last early release patch messed some things up. I switched back to normal patches. Going to make a backup of the server first and than will try above.
 
IgorG, those commands did not fix the problem. Only when I remove the WordPress Toolkit from Plesk can Resellers login????? By the way I'm running CloudLinux 7 on KVM. This all started happening after the latest early release patch.
 
I found the 2 files which causes the problem, the first file I can't edit, but the 2nd file I can edit and the last part of the code looks like it's part of the error.

At the bottom I will be pasting the code for the file:

/usr/local/psa/admin/plib/modules/wp-toolkit/vendor/plesk/api-php-lib/src/PleskX/Api/InternalClient.php


#### Fix Plesk Reseller Accounts Login ######

PHP Fatal error: Call to undefined method PleskX\Api\InternalClient::setLogin() in /usr/local/psa/admin/plib/modules/wp-toolkit/library/Helper/Api.php on line 35

ERR [1] ERROR: Call to undefined method PleskX\Api\InternalClient::setLogin() (Api.php:35)


###### 1st Problem File ###########
/usr/local/psa/admin/plib/modules/wp-toolkit/library/Helper/Api.php


This is the file I found which seems to be part of the problem. Since I tracked it in PleskX diectory for InternalClient.php linking from above link

###### 2nd Problem File ############

/usr/local/psa/admin/plib/modules/wp-toolkit/vendor/plesk/api-php-lib/src/PleskX/Api/InternalClient.php
###############################################################


####### InternalClient.php Code #####
/usr/local/psa/admin/plib/modules/wp-toolkit/vendor/plesk/api-php-lib/src/PleskX/Api/InternalClient.php

<?php
// Copyright 1999-2016. Parallels IP Holdings GmbH.

namespace PleskX\Api;

/**
* Internal client for Plesk XML-RPC API (via SDK)
*/
class InternalClient extends Client
{
public function __construct()
{
parent::__construct('localhost', 0, 'sdk');
}

/**
* Setup login to execute requests under certain user
*
* @param $login
*/
public function setLogin($login)
{
$this->_login = $login;
}
}

######################################################


Any help from any one would be really appreciated.
 
Back
Top