1

Seems my website can't backup to rackspace via updraft for some reason. In my error log I see

[Mon Feb 20 16:17:38.118180 2017] [:error] [pid 3093] [client 216.31.249.71:13708] PHP Fatal error:  Uncaught Error: Call to undefined function OpenCloud\\Common\\Http\\Message\\json_last_error() in /var/www/html/wp-content/plugins/updraftplus/vendor/rackspace/php-opencloud/lib/OpenCloud/Common/Http/Message/Formatter.php:45\nStack trace:\n#0 /var/www/html/wp-content/plugins/updraftplus/vendor/rackspace/php-opencloud/lib/OpenCloud/Common/Http/Message/Formatter.php(32): OpenCloud\\Common\\Http\\Message\\Formatter::checkJsonError('{"access":{"ser...')\n#1 /var/www/html/wp-content/plugins/updraftplus/vendor/rackspace/php-opencloud/lib/OpenCloud/OpenStack.php(393): OpenCloud\\Common\\Http\\Message\\Formatter::decode(Object(stdClass))\n#2 /var/www/html/wp-content/plugins/updraftplus/vendor/rackspace/php-opencloud/lib/OpenCloud/Common/Service/CatalogService.php(210): OpenCloud\\OpenStack->authenticate()\n#3 /var/www/html/wp-content/plugins/updraftplus/vendor/rackspace/php-opencloud/lib/OpenCloud/Common/Service/CatalogService.php(96): OpenCloud\\Common\\Service\\CatalogService->findEndpoint()\n#4 /var/www/html/wp-content/plugins/updraftp in /var/www/html/wp-content/plugins/updraftplus/vendor/rackspace/php-opencloud/lib/OpenCloud/Common/Http/Message/Formatter.php on line 45, referer: https://robbjack.com/wp-admin/options-general.php?page=updraftplus

Which I asked updraft support about and they said:

That’s strange. It seems that in your PHP setup, a particular PHP function has been disabled, and is not available for use (which then causes the crash, when UD tries to use it).

PHP Fatal error: Uncaught Error: Call to undefined function OpenCloud\Common\Http\Message\json_last_error() in /var/www/html/wp-content/plugins/updraftplus/vendor/rackspace/php-opencloud/lib/OpenCloud/Common/Http/Message/Formatter.php:45

This error message says that the function json_last_error() does not exist. I then double-checked that by referencing the mentioned line 45, which has this on it:

if (json_last_error()) { The PHP manual says that this function is a function built-in to PHP – http://php.net/json_last_error .

As such, it seems to have been disabled on your setup for some reason. You will thus want to talk to your sysadmin, or web hosting company.

Thing is, I am the new web admin since the original creators who made our website are gone. So I need to locate where this problem is. Maybe a permission error, where would this be? The server is running CentOS.

  • What version of PHP are you using – RiggsFolly Feb 20 '17 at 15:54
  • I may have spotted the error it is trying to report! You seem to have used a word processor rather than an editor to create your JSON as you are using `“` and not `"` as double quotes – RiggsFolly Feb 20 '17 at 15:57
  • @RiggsFolly PHP 7.0.14 (I'll mention the double quote to the support, maybe they have something wrong set) – user2769336 Feb 20 '17 at 15:59
  • @RiggsFolly actually, double checked it, I copied/pasted from the forum which messed up my quotes. The real error log shows it normally. Ill try to update the message with the real copy/paste – user2769336 Feb 20 '17 at 16:19
  • Seems the json module is not enabled on our server. The original creators did not compile PHP with that module, and i'm not sure why. I don't know how to do it (a little to advanced for me). I tried a pecl command but pecl wasn't installed either, and installing it didn't go smooth, so I get a lot of errors. Reading online, I need to recompile PHP but I'm not sure what commands to include or why they weren't included in the first place. I'm getting a lot of conflict errors too. So i'm stuck for now. :( – user2769336 Feb 20 '17 at 18:03

0 Answers0