Troubleshooting cPanel: fixing the white screen when accessing accounts via WHM (xfercpanel)
Back to blog

Troubleshooting cPanel: fixing the white screen when accessing accounts via WHM (xfercpanel)

9/27/2026 · 3 min · Servers

Anyone who manages cPanel/WHM servers on a daily basis knows that the White Screen of Death is one of the most frustrating issues to troubleshoot. The panel returns no explicit error message on screen, leaving the administrator unsure which layer failed.

Recently, I encountered this exact scenario: WHM loaded normally, the account list was visible, but clicking the cPanel icon to log into a customer account (https://server.domain.com:2087/xfercpanel) resulted in a completely blank page.

Here is the step-by-step diagnostic routine I followed to isolate the cause, inspect internal services, and restore access.


1. Initial symptom and first diagnostic steps#

The failing flow was the session transition from WHM to cPanel (xfercpanel).

As a first response, I executed the standard cPanel maintenance and package repair scripts via terminal:

/usr/local/cpanel/scripts/upcp --force
/scripts/fixrpm
/scripts/fixpkg

Even after forcing package repairs, the blank screen persisted.

Next, I monitored the main cPanel error log:

tail -f /usr/local/cpanel/logs/error_log

The output showed only routine operations:

[check_mysql] mysqlcheck found no errors on mysql
[wpt_license] Found no license information for this server.
[wpt_license] Nothing to do
“/usr/local/cpanel/scripts/restartsrv_spamd” called by (queueprocd)
info [whostmgrd] Successfully verified signature for cpanel (key types: release).

No fatal errors or stack traces appeared in the root log. This confirmed that the web daemon (cpsrvd) was running and accepting connections on port 2087, but the internal application rendering layer was failing silently before outputting HTML.


2. Investigating internal services: the cpanel_php_fpm daemon#

Modern cPanel interfaces (especially on themes like Jupiter) rely heavily on background internal services, notably cpanel_php_fpm (the internal PHP runtime executing cPanel plugins and views) and cpsrvd.

I attempted a hard restart of the cPanel PHP service via CLI:

/scripts/restartsrv_cpanel_php_fpm --hard

This produced the first concrete finding:

(XID ycspry) The “cpanel_php_fpm” service is disabled.

Next, I verified the main cPanel web daemon:

/scripts/restartsrv_cpsrvd --hard

Output:

Waiting for “cpsrvd” to restart ………waiting for “cpsrvd” to initialize ………finished.

Service Status
        cpanel (cpsrvd (SSL) - dormant mode - accepting connections) is running as root with PID 20253 (systemd+/proc check method).

cpsrvd restarted successfully.

When a service is marked as disabled in cPanel's service configuration, CLI restart commands are rejected by the system.

How to re-enable cpanel_php_fpm in WHM:#

  1. Log into WHM as root.
  2. Go to Service Configuration > Service Manager.
  3. Locate cpanel-php-fpm (or cpanel_php_fpm).
  4. Check both the Enabled and Monitor checkboxes.
  5. Click Save at the bottom of the page.

3. Inspecting browser devtools#

After re-enabling cpanel_php_fpm, I re-tested the /xfercpanel link. The browser's Developer Tools Console (F12) logged:

xfercpanel:1 Unchecked runtime.lastError: The message port closed before a response was received.

This runtime notice occurs when the browser or active extensions terminate the connection before a complete HTTP response arrives. In cPanel, this can be triggered by extension conflicts, stale session cookies, or handshake stalls during token exchange between WHM (port 2087) and cPanel (port 2083).


4. Comprehensive troubleshooting checklist#

To cover all possible causes of the white screen transition between WHM and cPanel:

A. Session isolation and direct login#

B. Theme reset#

Corrupted theme customization files can block the UI from rendering:

  1. In WHM, go to List Accounts > Modify Account.
  2. Switch the cPanel Theme to a stable default (jupiter or paper_lantern).
  3. Save and re-test account access.

C. Increasing internal PHP memory limit#

If the account loads multiple cPanel third-party plugins, the internal PHP worker may exceed memory limits:

  1. Edit /var/cpanel/cpanel.config.
  2. Add or increase:
php_memory_limit=512M
  1. Apply changes:
/usr/local/cpanel/scripts/upcp

D. Monitoring dedicated error logs#

To catch silent PHP exceptions in real time:

# Internal cPanel PHP-FPM log
tail -f /usr/local/cpanel/logs/cpanel-php-fpm-error.log

# Main cpsrvd web interface log
tail -f /usr/local/cpanel/logs/cpanel/error_log

E. Rebuilding users and perl vhosts#

If file permissions or internal mapping lists are corrupted:

/usr/local/cpanel/scripts/rebuildcpusers
/usr/local/cpanel/scripts/fix_all_perl_vhosts

Practical takeaways#

When encountering a blank screen in cPanel via WHM, the fastest path to resolution is checking the cpanel_php_fpm status in Service Manager, inspecting cpanel-php-fpm-error.log directly rather than relying solely on the root log, and testing direct port access. Following this structured workflow quickly isolates the failure point without requiring invasive changes.

Was this article helpful?

Leave a quick reaction to help prioritize future technical guides:

CC BY-NC

This post is licensed under CC BY-NC.

Comments

Join the discussion below.

0 comments