Symptoms
Smart PHP Updates can not be completed for a Plesk WordPress domain:
Smart PHP Update test run for example.com was performed with errors. Address the errors and try running Smart PHP Update again.
DOMDocument::loadHTML(): Argument #1 ($source) must not be empty
ERR [util_exec] proc_close() failed ['/opt/psa/admin/bin/filemng' 'root' 'base64' '/tmp/lshttpd/lshttpd.pid' '--allow-root'] with exit code [1]
ERR [panel] '/opt/psa/admin/bin/filemng' 'root' 'base64' '/tmp/lshttpd/lshttpd.pid' '--allow-root' failed with code 1.
stdout:
filemng: Error occurred during /usr/bin/base64 command.
stderr:
base64: /tmp/lshttpd/lshttpd.pid: No such file or directory
filemng: Error occurred during /usr/bin/base64 command.
ERR [panel] Task failed: id=5678, pid=157124, type=ext-wp-toolkit-smart-php-update-instance, error=DOMDocument::loadHTML(): Argument #1 ($source) must not be empty
ERR [panel] DOMDocument::loadHTML(): Argument #1 ($source) must not be empty
ERR [panel] Long task executor: id=5678 completed with error: DOMDocument::loadHTML(): Argument #1 ($source) must not be empty:
0: /opt/psa/admin/plib/Task/Async/Executor.php:46
Task_Async_Executor->execute()
1: /opt/psa/admin/plib/scripts/task-async-executor.php:6
Cause
Incorrectly generated sitemap. https://example.com/blocks/footer/ URL was being checked while it had no content.
Resolution
1. Connect to the server via SSH.
2. Locate the instance id for the domain in question. The Instance ID will be the first number listed:
plesk ext wp-toolkit --list | grep example.com
3. Manually generate sitemap using the instance ID:
plesk ext wp-toolkit --wp-cli -instance-id 123 -- sitemap generate
4. Re-run Smart PHP update.