Troubleshooting Common Duplicator Installer.php Issues: Blank Screens, 404s, and Code Downloads
Content
If you're trying to migrate or clone a WordPress site with the Duplicator plugin, running into problems with the installer.php file can be a major roadblock. Based on common community reports, this guide covers the most frequent issues and their solutions.
Common Symptoms
Users often encounter one of the following problems when trying to run the installer:
- Clicking the installer download button displays raw PHP code instead of downloading a file.
- Navigating to
yourdomain.com/installer.phpresults in a blank/white screen. - Accessing the installer returns a 403, 404, or 500 HTTP error.
- The URL redirects to
.../dup-installer/main.installer.phpwhich then fails. - Errors about "CSRF file not found" or missing archive config files.
- The installer downloads but is saved with a
.bakextension.
Why These Issues Happen
These problems are rarely due to a flaw in the Duplicator plugin itself. Instead, they are almost always caused by server configurations and environmental factors. The most common root causes are:
- Server Mime-Type Handling: Web servers must be configured to recognize
.phpfiles and execute them as PHP code. If they are treated as plain text, they will display their source code in the browser. - Mod_Security Rules: Overly aggressive security modules on Apache servers (Mod_Security) can block the installer's requests, leading to 403 errors or blank pages.
- PHP Configuration: Certain PHP settings like
short_open_tagbeing disabled, or low values formax_execution_timeandmemory_limitcan prevent the installer from running correctly. - File Permissions: The web server user (e.g., www-data) must have read and execute permissions for all Duplicator files and the directory they are in.
- URL Rewriting: Existing WordPress
.htaccessrules or other URL rewrite rules can interfere with accessing the installer file. - File Corruption: In some cases, the installer file can become corrupted during download or upload, especially if the download is interrupted.
Top Solutions to Try
1. For Installer Downloading as Code or .bak File
If the installer file doesn't download or shows code, the issue is often on the server where the package was created.
- Ensure your server is correctly configured to handle
.phpfiles. This may require checking with your hosting provider. - Try right-clicking the installer download button and selecting "Save link as..." to force a download.
- Manually check the file on your server via FTP. If it's named
installer.php.bak, rename it to remove the.bakextension.
2. For Blank Screens, 404, 403, and 500 Errors
This is the most common category of problem. Follow these steps to resolve it.
- Check File Permissions: Set the permissions (CHMOD) for the
installer.phpfile and thedup-installerdirectory to 755. Set file permissions withindup-installerto 644. - Rename .htaccess: Temporarily rename any existing
.htaccessfile in the root directory to.htaccess_old. This disables any rewrite rules that could be blocking access to the installer. - Check Mod_Security: Contact your hosting provider and ask if a Mod_Security rule is blocking the Duplicator installer. They can often whitelist the request.
- Verify PHP Version: Confirm that the destination server meets the minimum PHP requirements for the version of Duplicator you are using.
- Manual Extraction: In some cases, you can manually extract the archive zip file and then run the
installer.phpto bypass extraction-related errors.
3. For "CSRF File Not Found" Errors
This error is related to file permissions and missing security tokens.
- Ensure the
dup-installerdirectory and all its files were uploaded correctly and are not blocked by server security. - Verify that the
installer.phpfile and the archive zip file are from the same package build. Using a mismatched pair will cause this error. - Temporarily set directory permissions to 755 and file permissions to 644 to ensure the web server can read the necessary CSRF token file.
4. For Errors About Missing Functions (e.g., disk_free_space())
Some hosting environments disable certain PHP functions for security reasons.
- The error "Call to undefined function disk_free_space()" indicates this function is disabled. You must contact your hosting provider and request that they enable it, as it is required for the installer to check server storage.
Final Checklist Before You Start
- Always create a fresh backup package if you encounter errors, in case the original package was corrupted during build.
- Use a reliable FTP client to upload your files in binary transfer mode to prevent corruption.
- Disable any browser extensions or server-side firewalls that might interfere with the installation process as a test.
- If all else fails, try the installation process on a different server or local environment to isolate the problem.
Most installer issues are resolvable by adjusting server settings. If you continue to experience problems, detailing your specific error message and server environment when seeking help will lead to more targeted assistance.
Related Support Threads Support
-
I get WordPress installerhttps://wordpress.org/support/topic/i-get-wordpress-installer/
-
No permission to folder xxx when running installer.phphttps://wordpress.org/support/topic/no-permission-to-folder-xxx-when-running-installer-php/
-
message “FILE TPL NOT FOUND: page-boot-error”https://wordpress.org/support/topic/message-file-tpl-not-found-page-boot-error/
-
error renaming fileops.ppphttps://wordpress.org/support/topic/error-renaming-fileops-ppp/
-
404 Error at Installationhttps://wordpress.org/support/topic/404-error-at-installation/
-
installer.php file not working (can’t install files)https://wordpress.org/support/topic/installer-php-file-not-working-cant-install-files/
-
Issue During Manual Restorehttps://wordpress.org/support/topic/issue-during-manual-restore/
-
Error : Fatal error: Uncaught Error: Call to undefined function plugin_dir_path(https://wordpress.org/support/topic/error-fatal-error-uncaught-error-call-to-undefined-function-plugin_dir_path/
-
installer.php doesn’t displayhttps://wordpress.org/support/topic/installer-php-doesnt-display/
-
I can not download the file installerhttps://wordpress.org/support/topic/i-can-not-download-the-file-installer/
-
Installer php not workinghttps://wordpress.org/support/topic/installer-php-not-working-please-help/
-
error 500 when installinghttps://wordpress.org/support/topic/error-500-when-installing/
-
Call to undefined function plugin_dir_path()https://wordpress.org/support/topic/call-to-undefined-function-plugin_dir_path/
-
403 error while running installer.phphttps://wordpress.org/support/topic/403-error-while-running-installer-php/
-
Error restoring backuphttps://wordpress.org/support/topic/error-restoring-backup-3/
-
invalid command ‘php_value’ with php-fpm instead of mod_phphttps://wordpress.org/support/topic/invalid-command-php_value-with-php-fpm-instead-of-mod_php/
-
Installer.php blank pagehttps://wordpress.org/support/topic/installer-php-blank-page/
-
404: Cannot find installer.phphttps://wordpress.org/support/topic/404-cannot-find-installer-php/
-
Trouble Navigating to installer.phphttps://wordpress.org/support/topic/trouble-navigating-to-installer-php/
-
Installer.php does not run!!https://wordpress.org/support/topic/installer-php-does-not-run/
-
installer.php not loadinghttps://wordpress.org/support/topic/installer-php-not-loading/
-
CSRF file not foundhttps://wordpress.org/support/topic/csrf-file-not-found/
-
Installer.php not openinghttps://wordpress.org/support/topic/installer-php-not-opening/
-
HTTP_X_FORWARDED_HOSThttps://wordpress.org/support/topic/http_x_forwarded_host/
-
404 when installing from subdomain to root (no multisite)https://wordpress.org/support/topic/404-when-installing-from-subdomain-to-root-no-multisite/
-
Archive config file not found in dup-installer folder.https://wordpress.org/support/topic/archive-config-file-not-found-in-dup-installer-folder-3/
-
Downloading the installer results in opening the source code in my browserhttps://wordpress.org/support/topic/downloading-the-installer-results-in-opening-the-source-code-in-my-browser/
-
internal server error: malformed header from script ‘main.installer.php’https://wordpress.org/support/topic/internal-server-error-malformed-header-from-script-main-installer-php/
-
Final stage – index.php not foundhttps://wordpress.org/support/topic/final-stage-index-php-not-found/
-
CSRF FILE NOT FOUND but it’s there I think?https://wordpress.org/support/topic/csrf-file-not-found-but-its-there/
-
Installer Saying File Not Foundhttps://wordpress.org/support/topic/urgent-help-installer-saying-file-not-found/
-
After backup, installer download link displays code?https://wordpress.org/support/topic/after-backup-installer-download-link-displays-code/
-
500 error when trying to access installer.phphttps://wordpress.org/support/topic/500-error-when-trying-to-access-installer-php/
-
installer file download failshttps://wordpress.org/support/topic/installer-file-download-fails/