Skip to content

Troubleshooting Disk Page Cache activation and permission warnings ​

When you turn on Enable Disk Page cache (the local disk cache, also called the fallback cache), Super Page Cache stores copies of your pages on your own server as a backup to Cloudflare. To set this up with the default method, the plugin needs to:

  • Add the line define('WP_CACHE', true); to your wp-config.php file.
  • Create the advanced-cache.php drop-in file inside your wp-content directory.

If your host blocks writes to these locations, the plugin shows a setup warning such as The file wp-config.php is not writable or The directory wp-content is not writable.

If Disk Page Cache activation fails after the plugin tries to update either file, the Cache settings screen shows this persistent error: “Super Page Cache could not activate the disk page cache. Pages will not be cached to disk until this is fixed.” It appears when the plugin cannot create or replace wp-content/advanced-cache.php, or cannot enable WP_CACHE in wp-config.php.

The default Disk Page Cache integration also cannot stay active when wp-config.php defines WP_CACHE as false, because WordPress then does not load the advanced-cache.php drop-in. In that case, Enable Disk Page cache returns to disabled after you save it.

If wp-config.php already contains define( 'WP_CACHE', false );, change that existing line to define( 'WP_CACHE', true ); instead of adding a second declaration. Add define( 'WP_CACHE', true ); manually only when wp-config.php has no WP_CACHE declaration.

After correcting the permissions or the WP_CACHE declaration, save the settings again. To confirm the fix, click Update Settings, reload the Super Page Cache → Settings screen, and check that Enable Disk Page cache is still turned on. The notice clears after activation succeeds or after you disable Enable Disk Page Cache. The cURL, Cloudflare-only, and hosting-permission remedies below remain applicable.

In this article

📝 Note: This warning affects only the local disk cache. Your Cloudflare edge caching keeps working normally whether or not Disk Page Cache is enabled, so your pages are still cached across Cloudflare's network.

You can resolve it in one of the following ways.

Switch the fallback cache to cURL mode ​

Enabling cURL changes how the plugin builds the local cache so that it no longer uses the advanced-cache.php drop-in or the WP_CACHE line in wp-config.php. If those are the only writes your host is blocking, switching to cURL lets you keep the disk cache without editing wp-config.php.

  1. Go to Super Page Cache → Settings. On the General tab, enable Show advanced settings to reveal the Advanced tab.
  2. Open the Advanced → Cache tab and enable Use cURL.
  3. Click Update Settings.

cURL mode still writes cached files to your server, so it does not help if your host blocks all writes inside wp-content. For more detail, see Should I enable the cURL mode for Fallback Cache?.

Leave Disk Page Cache disabled and rely on Cloudflare ​

If you cannot change these permissions, leave Enable Disk Page cache turned off and continue using Enable Cloudflare CDN & Caching. You lose only the local disk fallback layer — edge caching on Cloudflare is unaffected.

If you want the disk cache: what to ask your host ​

If you need the local disk cache and cURL mode is not enough, contact your hosting provider or server administrator and ask them to:

  • Check wp-config.php for an existing WP_CACHE declaration. If it is define( 'WP_CACHE', false );, change it to define( 'WP_CACHE', true );. Add the line define( 'WP_CACHE', true ); only if no declaration exists, and
  • Allow WordPress and Super Page Cache to create or update the wp-content/advanced-cache.php file.

Once these changes are in place, return to the plugin settings and enable Enable Disk Page cache again.

Was this helpful?