Web Servers: Apache, LiteSpeed, Nginx, Lighttpd, IIS, WebServerX
Note: 99% of all hosting companies will meet these basic requirements. For a full break-down of setup recommendations see the
Duplicator Pro recommended hosts page.
Managed Hosts
The Lite version of Duplicator does not officially support managed hosts at this time. There is currently a unification project underway to merge both the Pro and Free code lines
so that the Free product can also take advantage of these features. The unification project is slated for late 2023, until that time only support for managed hosting
will reside in the Pro product version 4.0.0 and above.
Duplicator Pro does currently supports the managed hosts below. Managed WordPress Hosting is a tailor-made and optimized type of web hosting that is specifically designed to support WordPress
sites on a companies servers. These types of configuration do not typically follow the standard host models and require additional logic to support.
Note: Managed hosting has a much higher churn rate on server settings and updated environments. These changes can affect how the product interacts with each managed host.
In the event you run into issues with any of the managed hosts, please contact us with your issue and we will work to help you finalize your migration and update the product if needed.
Question BPHP Requirements
What version of PHP Does Duplicator Support?
The table below shows Duplicator PHP support levels. Duplicator Lite currently require PHP 5.3.8+ and Duplicator Pro requires PHP 5.6.20+.
Duplicator recommends using PHP 7.0+ or higher when possible.
PHP Version
Pro Version
Lite Version
before 5.2.16
not supported
not supported
5.2.17 thru 7.4.15
1.0.0 thru 3.8.9.3
1.0.0 thru 1.3.40.1
5.3.8 thru 8.0.0
4.0.0 thru 4.5.2
1.4.0+
5.6.20 thru 8.1.0+
4.5.3+
1.4.5+
Older version of Duplicator can run on PHP 5.2.17 to 5.6.19. If using an older PHP version we recommend to upgrade for these reasons:
Installing Duplicator Pro follows the same procedure as manually installing any other WordPress plugin. The only extra step you need to perform is to
activate your license once you have installed and activated the plugin.
Step-By-Step
Download Duplicator Pro Plugin zip file to your desktop.
- After purchase you will receive an email with a download link
- You can also login to your SnapCreek Dashboard and download that latest version.
Login to your WordPress Administrator and click "Plugins".
Click the "Add New" button.
Click the "Upload Plugin" button.
Click the "Choose File" and select the Duplicator Pro zip file and click "Install Now".
Click Activate to activate it.
Duplicator Free and Duplicator Pro are two separate plugins. This means they can both be installed at the same time if you choose - although once you
have the pro version there really is no need for the Free version as Pro has all the features of the free version and much much more...
Go to Duplicator Pro ❯ Settings ❯ Licensing ❯ Enter Your License Key
- Your license key will be sent to you via email after you purchase OR
login to your dashboard to view your keys
The Duplicator Pro plugin is used to backup, migrate and ease the overall work-flow for working with WordPress sites. The plugin allows developers, designers, admins,
and business owners to easily backup, restore and move a WordPress site from one location to another. The plugin consists of the following menu items or sections.
Menu Options
Menu Name
Description
Packages
The starting point for the plugin. This is where all packages are created and viewed.
Schedules
Create and setup schedules backups to ran at various durations.
Storage
Create storage endpoints to servers like Google Drive, Amazon Cloud, Dropbox and FTP.
Templates
Create custom profiles of what your package should include or exclude such as directory/file paths. Include or excluded
specific database tables as part of your backup.
Tools
Various tools such as package logs and system cleanup.
Settings
Global plugin settings used to help facilitate the use of the plugin.
Quick Start: To get up and running quickly with the plugin checkout the
Quick Start Guide
Duplicator is a WordPress plugin that migrates WordPress sites between hosts or domains - this includes all plugins, themes, custom content and the WordPress core files so you get an
exact copy of your site. The plugin also servers as a backup and restoration system. Duplicator consists of two separate code bases (versions).
Duplicator Lite: This is the free version of the product and can be downloaded for free from WordPress.org
Duplicator Pro: This is the professional commercial version of the plugin and can be purchased here. Within the professional
product there are four different versions Personal, Freelancer, Business and Gold. For a full overview see the
comparison page for more details.
Migration Steps
The process for migrating a site is easy:
Bundle up your site into a 'Package' which consists of two files an archive.zip/daf and installer.php
Copy the Package files to a new location
Point your browser to the installer.php file and follow the simple directions to install the site
Alternatively you can import the archive.zip/daf file into an existing WordPress site
StepsDuplicator Steps
What are the steps involved with a migration?
The plugin will backup all of your selected files and database tables (that you don't filter/exclude). Duplicator puts all your selected WordPress files and a scripted copy of your
database into a single zip file called an archive and generates and installer to help restore the archive. The installer and archive files are
referred to as a package. You can then download the package files to a different location where you can re-install your site.
Step 2: Install Backups
At install-time the following actions happen:
Archive Extraction. All WordPress files are extracted from the archive including the database script.
Database Creation. The database script is executed to restore the original data in the new database.
Database Scrubbing. Every table is processed and the old URLs are replaced with the new ones.
Various methods of storage are considered (PHP serialization, JSON, Base64, etc...)
Optional Overhead. Duplicator Pro has additional logic that runs such as multisite manipulation.
Config File Scrubbing. The wp-config.php is scrubbed for updates to WP defined variables
.htaccess set. The .htaccess file is reset for the new location
Will Duplicator work with all my themes and plugins?
In 99% of most cases it will work with your theme and your plugins. However there can be issues at install type where data was not able to port correctly.
This is where you will need to read the final report on step 3 of the installer and validate the options that the plugin could not update.
If you run into any errors or warnings please read the section directly below.
What is the package size limit?
On 64 bit versions of PHP there is effectively no limit on .zip file size, however the maximum file size supported on 32-bit PHP is 2.1GB. Note that most hosts support 64 bit PHP.
CPU and memory constraints imposed by your host may also limit zip file size by cutting off the build early. Because of this, we developed the DupArchive format to get around these host limitations. When using the DupArchive engine, Duplicator Lite is capable of bundling sites up to 500MB in size, while Duplicator Pro has no size limit outside of the limit imposed by your PHP architecture.
ProductsDuplicator Versions
How does Pro differ from the Lite version?
A comparison list of professional vs free can be found on the comparison page.
While Pro will continually be improving and adding features, the Lite (free) version of the plugin is not expected to have any new major features except for
bug fixes and smaller tweaks. For larger sites Pro also supports shell_exec and Ajax call backs for PHP ZipArchive which allow for larger packages upto 2GB
on most servers.
The Duplicator Pro plugin allows for developers to hook into certain events that happen during its execution cycles. Below is an overview of the currently
supported hooks. Hooks are officially supported in Duplicator Pro version 4.5.2+
Hooks
The following hooks are currently available for Duplicator Pro
Hook
Description
duplicator_pro_build_before_start
Called right before the build process starts for both manual builds and scheduled builds.
duplicator_pro_build_completed
Called at the very end of the build process for both manual builds and scheduled builds.
duplicator_pro_build_fail
This hook is called whenever a build fails for both manual builds and scheduled builds.
duplicator_pro_first_login_after_install
Called after an install has successfully ran and user accesses WordPress admin for the first time.
Setup
Hooks can be called from several different places. The quickest way to get started with hooks is via the
themes functions.php file found in your themes directory. Duplicator Pro hooks can also be called
from custom or commercial plugins. Duplicator Pro hooks make use
of the WordPress API add_action call. So basically anywhere in the WordPress PHP stack that
makes use of the add_action method users can call into the Duplicator Pro hooks shown above.
QUICK START
To get started with hooks and validate they are working properly with your WordPress site follow these quick setup steps.
SHOW QUICK STEPS
1. Open your active themes functions.php file.
2. Paste the following code at the bottom of the file
3. Create a package to trigger the build hooks.
4. Open your PHP error or debug.log file and the results of the functions should be shown.
SAMPLES
Below are some samples that can be used with the various hooks. Because the code is customizable the possibilities are endless.
SHOW SAMPLES
Sample-1
In this example you can cleanup transient data before you build a package.
function deleteAllTransientsOnPackageCreation() {
global $wpdb;
$sql = 'DELETE FROM ' . $wpdb->options . ' WHERE option_name LIKE "_transient_%"';
$wpdb->query($sql);
}
add_action( 'duplicator_pro_build_before_start', 'deleteAllTransientsOnPackageCreation');
Sample-2
In this example you can log build statues to basically any external API you want. In this example we are posting to Slack.
The "Packages » All" screen is the main interface for managing all the packages that have been created.
A Package consists of two core files which are named 'Installer'
and 'Archive'. The Installer file is a plain php file that is used to help redeploy or install the Archive file, the two go hand in hand. The Archive file is a compressed
zip file of all your WordPress files and a copy of your WordPress database.
The Archive file can be adjusted to include/exclude only directories/files or database specific tables from your WordPress site. These options can be in edited in the
Packages » New: Step 1 Setup view found by click the 'Create New' button. Below is a list of all the options available on
the packages screen.
Details
Item
Notes
Bulk Actions
Delete: By checking each package line and clicking the 'Apply' button you can delete the package information. This will remove any of the local packages on the
server including the physical installer and archive files. This will however not any of the packages that may have been stored to a cloud instance
such as Google Drive, Dropbox, etc.
Create New
This button will start the wizard for creating a new package and will take you to the Step 1 Setup screen.
Type
This value will display either 'Manual', 'Schedule' or 'Schedule'. Manual: The indicates that the package was manually created using the 'Create New' button. Schedule: The indicates that the package was created by a scheduled routine. Schedule: The indicates that the package was created manually from schedules screen using the 'Run Now' action.
Created
The time at which the package was created. This value represents the server time and is controlled by the
WordPress Admin ❯ Settings ❯ General ❯ Timezone settings.
Size
The size of the Archive.zip file. This value will vary based on if any filters have been enabled.
Name
The name of the package. This can be any descriptive name you want.
Installer Name
The 'Installer Name' identifies the full name of the installer file. If it is hashed (unique) then the lock icon will be locked to identify that the name is secure to browse
to on a public facing URL.
Package
Download
Installer: This button will download the installer.php file. If a local storage option was not set then the button will be disabled. Archive: This button will download the archive.zip file. If a local storage option was not set then the button will be disabled.
Storage
This button will show the remote storage endpoint links setup otherwise it will be disabled, if no remote storage locations were selected.
More Items
Details: This option will show the package details screen which contains all the details about the package. Transfer: This option will show the transfer screen where packages can manually be transferred to a remote location. Recovery: This option will show the recovery dialog where you can manage restoring your site.
Notices: Build Cancelled: The build was actively cancelled by clicking the 'Stop Build'
button shown only when a build is in progress. Error Processing: The build process failed or was unable to complete successfully.
Clicking the link will take you to the Package Details screen where you can view the package build log under the 'General' ❯ Files Storage Error: This indicates that at least one of the remote
storage transfers failed. If a package has multiple remote endpoint locations and one of the endpoints fail, but the others succeed then the one that failed
should show in red and indicate that it failed.
Footer
Packages: Shows the number of packages that have been made. This value will also show packages that may have errors. Total Size: The size of all the packages combined on your server disk. Server Time: The current time on your server this is controlled by WordPress Admin ❯ Settings ❯ General ❯ Timezone settings.
The package setup screen allows you to prepare where the package will be stored and which files and database tables will be placed in the archive file. The setup screen has several
sections all of which will be covered below.
Details
Requirements
The System requirements section must pass for the Duplicator to work properly. If this section shows fail you will not be able to continue with the setup until it shows
as passing. There are currently 4 main sections PHP Support, Permissions, Server Support and Installation Files. Clicking on each link will open a description for
what actions you can perform to get the requirement to pass. This section is not visitable unless a requirements check has failed.
Inputs
The following options are not grouped to any section and will apply to the entire package.
Item
Description
Name
A name to help identify the package. By default the value from the last package creation is loaded as the default name.
Notes
Click the notes button to expand and add additional notes about the package.
Template
An optional template configuration that can be applied to this package setup. An [Unassigned] template will retain the settings from the last scan/build.
Templates can be created from the Templates menu. For more information about templates see the
template section.
Storage
The storage section allows you to pick from any of the storage locations that have been created such as the local server, Dropbox, Google Drive, Amazon and FTP.
If a storage endpoint does not exist in the list then click the 'Add Storage' link in the right corner to add one.
When creating a package choose each location by checking the checkbox. For each location you check the package and installer file will be stored on that location.
The main storage title will have the number of actively checked endpoints. To proceed to the 'Scan Step' at least one storage point must be checked. The table below
covers the various options for the Storage section.
Item
Description
Name
A descriptive name that defines the endpoint. For remote locations the line will show a cloud icon. For locations that are on the
local servers hard drive it will show a server icon.
Type
This defines the endpoint type such as Local, Google Drive, Dropbox, FTP and others.
Location
This defines the location where they are stored, some values will be click-able while others will not.
Archive
The archive.zip file is what contains all your files and a copy of your database via a generated SQL file. By default when the archive file is created all files and directories
from your WordPress root path and all the tables in the WordPress database are selected. In order to customize your archive file you can exclude files and database tables.
Excluding items is handy if you don't want to continually create large archive files and only need to select specific items. However if you do exclude specific items please be
aware that you will have to manually move those items immediately after package installation. The table below covers all the options for the Archive section.
Item
Description
FILES TAB
Enable File Filters
File filters allow you to ignore directories/files and file extensions. When creating a package only include the data you want and need. This helps to
improve the overall archive build time and keep your backups simple and clean. The checkbox allows you to keep all the settings or temporarily ignore them.
If any type of file filter (directory, extension, file) is enabled the Archive title will show the following icons
.
Directories
Add the full path to the directories that should be excluded from being archived. Add a semicolon to separate each path. For example if you want to
ignore your uploads path and the WordPress cache then the path(s) might look like this:
File extentions allow you to exclude all files with a specific extention. For example if you wanted to ignore all zip, tar and log files then you would add:
zip;tar;log
Please note that you only need to the extension name and not the '.' separator. Use the links on the right to quickly add common extensions.
Files
Add the full path to the file(s) that should be excluded from the archived file. Add a semicolon to separate each path. For example if you want to
ignore the readme.html file in your root, a specific file in your uploads folder and all error.log files in the entire site then the path(s) might look like this:
Use filenames without paths to filter same-named files across multiple directories, this can be useful for debug and log files. Note: pattern expressions are
currently not supported (i.e. error.*)
DATABASE TAB
Build Mode
PHP: This mode uses PHP to build the database.sql script which contains a full copy of your database minus any excluded files. This particular mode is
very resource intensive and is much slower on larger databases.
Mysqldump: This is the preferred mode and should be used if the option is supported on your server. It uses less server resources and is much faster for
larger databases. Please contact your server admin or hosting provider to enable both shell_exec
and mysqldump for this option to work with in your site.
Enable Table Filters
Table filters allow you to ignore certain tables from a database. When creating a package only include the data you want and need. This helps to improve
the overall archive build time and keep your backups simple and clean.
When a table is checked it will be excluded from the generated database file. If any type of table is enabled the Archive title will show the following icon
indicating that a database filter has been applied.
Excluding certain tables can cause your site or plugins to not work correctly after install. Please be sure to know the purpose of excluded tables
and if your unsure to contact the plugin/theme authors website.
Compatibility Mode
This is an advanced database back-wards compatibility feature that should ONLY be used if having problems installing packages and you have no option to update
the mysql server version. If the database server version is lower than the version where the package was built then these options "might" help generate a
script that is more compliant with the older database server. It is recommended to try each option separately starting with mysql40.
Our first recommendation is to always try and keep your mysql server versions up-to-date. It is highly recommended that the mysql server where
you built the package be very close to the same version where you are installing the package. For example if you built the server on 5.7.x it is
recommend that the installer server be 5.7.x or 5.6.x. The bigger the discrepancy between versions the more potential there is for errors and data corruption.
How to use Compatibility Mode
MySQL Dump must be enabled. See Settings ❯ Packages Tab ❯ Use mysqldump radio button ❯ Save
Packages ❯ Create New ❯ Open Archive Section ❯ Database Tab ❯ Compatibility Mode
Read "full overview" link to understand options that may pertain to your setup
Check the compatibility option(s) that apply to your setup and try to create the package
On the scan screen you will see a notice that one of the compatibility modes have been checked
Run the installer.php and check the install-log.txt for any deploy errors that may occur
Since we do not recommend this approach we don't offer support for working with and using these settings. The time involved with trying to find the right
combination and determine if the data will even be stable is beyond our support for the product. We have partners who can help you work through these
issues. For additional developer help consider Tilden Tasks from our partners page.
SETUP TAB
Security Mode
None:
No protection system activated! The installer or archive files can be accessed by any resource that knows the full URL to either file.
Installer Password:
The archive is NOT encrypted. When the installer starts, it will prompt for a password to prevent anyone from running the installer.
Archive encryption:
The archive IS encrypted with a password, and the installer will ask for a password when started. This option is the recommended maximum level of security.
Encryption Dependencies
Depending on the engine selected, different requirements are needed. For example PHP 7.2 is required to create an encrypted Zip archive but PHP 5.6 is sufficient to extract.
If using either Installer Password or Archive encryption the password field must be entered.
Caution: Passwords are case-sensitive and if lost cannot be recovered. Please keep passwords in a safe place.
If this password is lost then a new archive file will need to be rebuilt since passwords cannot be recovered.
Installer
The installer file is what is used to help redeploy or install the archive file. The installer section of the package setup has several optional options for the installer.
These values are all optional on this screen and not required.
SETUP The setup section allows for how the installer will behave when you initially browse to it.
Item
Description
Password Protection
As of Duplicator Pro 4.5.3+ this feature is now visible in the Archive Setup Tab
Enabling this option will allow for basic password protection on the installer. Before running the installer the password saved in this value must
be entered before proceeding with an install. This password is a general deterrent and should not be substituted for properly keeping your files secure.
Skip System Scan
By default every time the installer is opened it will run a simple scan on the server environment. If the scan check passes then enabling this option
automatically take you to step one of the installer and will skip the system scan screen.
INPUTS All values in this section are optional. The installer can have these fields pre-filled at install time. If you would like to have the installer pre-filled with
these values then enter them here. All of these values are covered in detail in the Installer section of this guide.
The system scan step helps to ensure the build process runs smoothly. The scan step can help determine potential issues that might occur during the build phase and
even the install process. The more ' Warn' checks that are found the higher the potential for running into
issues during the build and install phases. Getting all the scan checks to show ' Good' will help ensure a
clean build and install process, however continuing with a 'Warn' status is still possible.
Details
The scan report covers server settings, archive files and database tables. Scan checks are not required to pass, however they can cause issues on some systems if they are
not addressed. If you receive a 'Warn' status on any of the items; then open the specific link and read the suggestions.
It is OK to try and build a package even if you have a 'Warn' status. If you are able to build a package with a 'Warn' status then you can ignore the warning. However if you
have issue during the build or install process you may want to work with your hosting provider to try and address the warning.
The Build Mode section covers the different ways in which the files and database can be archived. The modes can be adjusted via
Duplicator Pro ❯ Settings ❯ Packages Tab ❯ Database & Archive Engine
Item
Description
Archive
ZipArchive: This setting uses core PHP code to zip up all of the requested files.
While this setting is much more common place on most hosting providers it can be more resource intensive and it some cases slower than shell_exec.
Shell_exec: This setting is recommend if your server supports the setting.
Shell_exec uses PHP to call out to your server system zip command which can be faster and less resource intensive on some servers.
Database
PHP: This setting uses core PHP code to build the database script.
While this setting is supported on all servers it is more resource intensive and it some cases slower than mysqldump.
Mysqldump: This setting is recommend if your server supports the setting.
mysqldump uses PHP to call out to your server system mysqldump command which is faster and less resource intensive.
The build step is the last step of the package creation process and is displayed directly in the Packages screen. When a package is building you will need to wait for it
to complete before attempting another. If a scheduled package is queued up at the same time as a manual package then it will stay in a pending state until the
first one completes.
Details
The different states that the build process may be in at any given time are shown below:
Item
Description
Building Package
When a package is building a indeterminate progress bar with show along with a message saying 'Building Package %50'.
The percentage will slowly change as the package is being processed. You can click the
button at anytime to stop the current build.
Depending on your server environment the build process can take several minutes. It is very rare (depending on the size) but the process may take upto an hour.
The package process however should not take hours. If the process takes much longer than 60 minutes then in most cases the process may be stuck.
If you suspect build issues try to create a small package by creating a root path directory filter on Step 2 under the Archive file filters section
and see if a very small package can be created. Then incrementally allow for more files to be added to the archive. This will help you troubleshoot
any issues that are related to package size. Please note that once packages start to get over 2GB you may run into issues, especially on budget hosts.
When the package is done building the progress bar will go away and on the very left hand side of the row will be a color indicating the state of the build which are:
Running: The package is currently building or transferring to a remote storage location
Success: The package has been successfully built
Error: An error occurred during the package build process
Transferring Package
Once a build has successfully run the plugin will start the process of transferring the archive and installer files to all the specified remote storage endpoint locations
that were selected with this build. The message will change to 'Transferring Package %50' with a current sub status message
of the remote endpoint location that it is working on.
The transfer process will continue to work through each storage endpoint that was selected. For example if you choose Google, Dropbox and FTP then it will go through
all 3 endpoints copying the files to each endpoint. If say Dropbox fails during the process it will still continue to process the other endpoints.
If an endpoints fails during the transfer phase then then the storage button will be shown as
. Clicking the button will open a dialog that shows which transferrs
worked and which ones failed. If they all where successful it will show as
Pending Package
When multiple packages are set to build or attempt to start the build process at the same time, the plugin will check to see if there are any active builds. If another
build is running the subsequent queued packages will be put into a pending state until the first package is done building and transferring all its data. Pending items
can be cancelled before they are ran by clicking the button.
This section will walk you through creating a package step-by-step. In these steps we will try to cover some general scenarios that may apply to your setup as well.
If they don't feel free just skip the step.
Start: Goto Duplicator Pro ❯ Packages ❯ click the 'Create New' button in the upper right corner.
STEP 1 - Setup:
Give the package a name
Click the Notes button to add notes (optional).
Open the 'Storage' section and choose a storage location
Edit how the archive file will be created and its contents (optional).
Optional: Open the 'Archive' section and check the 'Enable File Filters' checkbox
Add to the 'File Extensions' input the value logthis will exclude all log files with a log extention
Add to the 'Files' input the value error_logthis will exclude all files named error_log
Add any additional files to exclude and be sure to enter the full path of the file such as //public_html/mysite.com/myfile.zip
Edit the installer inputs. These values will be shown at install time in the installer inputs (optional).
Click the Next Button & let the scanner run.
STEP 2 - Scan:
When the scan is completed check the statuses to make sure they are flagged as ' Good'. If any status show a
' Notice' then its still OK to continue with the build, but you will need to observe
the message in the event the build runs into issues. Expanding each section shows more details about how to get the 'Notice' status to go away. After checking
the scan you can then click the 'Build' button.
STEP 3 - Build:
When the package starts building you will be taken to the Packages screen were a progress indicator will run until the package is complete. Once the package
has completed building you can download or transfer the files or just leave them for later use.
Walk-throughs
Create Package - Quick Steps
Click to Load Video
07:13
This quick overview video will quickly walk you through the process of creating a package file.
Create Package - In Depth
Click to Load Video
52:03
This detailed in-depth video will cover all aspects of the package creation process.
In addition to the "Classic" site installs, Duplicator Pro includes Drag and Drop site overwrite installs. This is a handy feature for those who want to overwrite an
existing WordPress site without the need for FTP or manual database creation. Simply "Drag" an archive from your PC desktop to the destination site's WordPress
admin to overwrite the site.
Use Cases:
Staging: Drag-n-Drop imports are perfect for staging sites where you quickly want to overwrite an existing site.
Beginners: If you are new to WordPress or have a limited IT background the Drag-n-Drop import will be very helpful in the migration process.
With the import feature you don't have to worry about setting up a database or learning FTP. You can simply use the existing settings from a WordPress site that
already exists.
Upload Area: The top half controls the options and actions around the upload of the archive.zip/daf file.
Archive Area: The bottom half shows the archives that have been successfully uploaded.
Upload Area
Section
Notes
Options
In the upper right corner is a hamburger menu option that lets you control the view of the import screen. The following options
are available
View-Advanced: This default view allows users to see and upload multiple packages at once.
View-Basic: This view only allows one upload and will only show the last uploaded archive file.
Settings: This option takes users to the Settings ❯ Import Tab, where they can adjust the settings shown below.
Settings
Chunk Size
This setting controls how fast the server will upload a given archive file. On some hosts you can use the fastest settings on others it may need to be adjusted.
Connections size are from slowest to fastest. If you have issue uploading a package start with a lower size. Upload speeds can be affected by various server connections
and setups. Additionally, chunk size can influence the upload speed [Settings ❯ Import]. If changing the chunk size is still slow, try uploading the archive manually
with these steps:
Cancel current upload
Manually upload archive to: /wp-content/backups-dup-pro/imports/
Refresh the Import screen
Max Size
This determines the maximum file size that can be uploaded. For more details on how your hosts server handles this setting please contact your host and also
refer to the PHP online documentation.
Actions
Import File
The import file tab which contains the area titled "Drag & Drop Archive File Here" is the location were you can upload a Duplicator archive.zip/daf file to the current WordPress
host/server. Users can simply drag-n-drop the archive file or select the upload button to add the archive file.
Import Link
The import link tab which contains the area titled "Import from Link" is the location were you can upload a Duplicator archive.zip/daf file to the current WordPress
host/server from a URL. Users can simply add the location of the archive file URL and click the Upload button to import the archive file.
Archive Area
Item
Notes
Archives
List all the archive files that have been uploaded to the current WordPress site.
Size
The file size of the archive file that has been uploaded.
Created
That data/time in which the archive was uploaded.
Status
Details: Show the various details of the archive such as its setup (url, path), versions, file details, database details.
Remove: Clicking the remove button will remove the archive file.
Continue Continue with step 2 of the import process, which validates if you have a valid recovery point.
If a package is not properly configured with a valid WordPress site including all the
Core WordPress Files and
database tables then an import will not be allowed.
Note: In addition to all the core WordPress tables an import requires that all tables in you site be included as well. In future versions this requirement will be less
strict and only rely on the core tables.
The Import Step 2: Confirmation screen has two areas:
Recovery Point: This section explains how to set a recovery point.
System Overview: The section give a high level overview of your site and some of its meta-data.
Recovery Point
A recovery point will capture your entire site and restore it exactly as it was and is recommended before running an import install, but no required.
For more details on how recovery points work check out the Recovery Tools Section.
The import installer shows after being launched from the Import Step 2: Confirmation screen. This installer is almost exactly the same as the
Classic Installer & Overwrite Installer however this installer runs inside of the
current WordPress site. When the installer is completed it will have replaced the site from which it was imported into. For a full rundown of all the options in the installer and
how it works and functions see the Installer Guide Section.
Build Package: Build a package on the source site. It’s important to not filter any tables or core WordPress directories (these are required for Drag and Drop to work with the package)
Save Package: Click the Download button on the row associated with the package you built in step 1 and click the “Archive” option to save the installer.php and archive to your local PC.
Install Plugin: Install the Duplicator Pro plugin just like you did on the source site (Plugins ❯ Add New ❯ Upload then Activate)
Upload Archive: Go to Duplicator Pro ❯ Import ❯ Drag the archive you downloaded on step 2 to the import area of the destination site to start the upload process and review archive details.
Recovery Point: Set an optional (see above) if needed.
Launch Installer: Launch the installer and continue through the wizard screens.
For a detailed overview of the import and setting a recover point see these posts:
This feature is only available in Pro. Schedules can be setup as frequently as you want. Scheduling in Duplicator is very straight forward. No complicated configuration screens.
Duplicator supports the creation of multiple schedules by either Day, Week or Month. If you would like to backup your site several times per day you can do this by creating
multiple daily schedules.
The "Schedules » All" screen is the main interface for managing all schedules that have been created. Schedules are used to automatically create a package at a
specific time. Schedules can be ran at any time and as frequently as needed. It is however recommend to space out and only run your a schedule when absolutely needed.
Creating packages are expensive on your server resources and should be used with caution especially on shared budget hosts.
Schedules use predefined templates to run from. Templates allow you to choose which files and database tables you would like to make as part of your backup process.
A schedule can also be tied to a storage endpoint and pushed upto the cloud as part of its runtime directive.
Details:
Item
Notes
Name
A short descriptive name for the schedule. EXAMPLES: "Weekly Full" ❯ A schedule to backup the entire site once a week. "Bi-Weekly Full" ❯ A schedule to backup the entire site twice a week. "DB-Daily 00:00" ❯ A schedule to backup only the database at 12am daily. "DB-Daily 13:00" ❯ A schedule to backup only the database at 1pm daily.
QUICK LINKS: Quick View: This will show additional summary in-line such as the summary and how many times it has been ran. Edit: Takes you to the edit screen. Delete: Will delete only the selected schedule. Run Now: This will activate the package creation process for this schedule right now. Once clicked you will be taken to the
package build process on the packages screen.
Storage
Every storage location the schedule backup is stored or transferred to. This will be the storage name not the storage type. For example if your
storage type is Dropbox but you named it 'My Dropbox' then 'My Dropbox' will show in this column.
Runs Next
The next date time the schedule is scheduled to run.
Last Ran
The last time the schedule was ran or actively initiated.
Active
A schedule must be active for it to run. This will show if the schedule is currently active and ready to be ran.
Footer
Total: Shows the number of schedules created. Active: The number of active schedules. Time: The current time on your server this is controlled by WordPress Admin ❯ Settings ❯ General ❯ Timezone settings.
The Add/Edit screen is used to add and edit existing schedules. You can easily copy an existing schedule by using the copy from drop-down in the upper right hand corner.
Item
Notes
Name
A short descriptive name for the schedule. EXAMPLES: "Weekly Full" ❯ A schedule to backup the entire site once a week. "Bi-Weekly Full" ❯ A schedule to backup the entire site twice a week. "DB-Daily 00:00" ❯ A schedule to backup only the database at 12am daily. "DB-Daily 13:00" ❯ A schedule to backup only the database at 1pm daily.
Template
Every schedule must be assigned to a template. Templates allow you to choose which files and database tables you would like to make as part of
your backup process. The default template will be assigned by default.
Storage
Choose at least one or more storage location(s) that your schedule will be stored at. This can be the local server or any number of storage locations
such as Dropbox, Google Drive, FTP and others.
Repeats
Daily ❯ This will run the schedule every X days. For example if you choose every 7 days then the schedule will run once per week. Weekly ❯ Choose the days of the week Monday thru Sunday that you would like the schedule to run. Monthly ❯ Choose which day of the month and the number of months you would like to run.
Note: If you have a large site, it's recommended to schedule backups during lower traffic periods. If you're on a shared host then be aware that running multiple
schedules too close together (i.e. every 30 minutes) may alert your host to a spike in system resource usage. Be sure that your schedules do not overlap and give
them plenty of time to run.
Start Time
The time of day you would like this to run. All times are in 24 hour increments from 00:00 (12am) to 13:00 (1pm).
Activated
A schedule must be active for it to run. This is an easy way to enable/disable a schedule without removing it.
It is recommend to only make backups based on the frequency of how your data is being written. If your not uploading images/media to your site and none of the
theme files change very often then it would only make sense to backup your database more frequently vs backing up everything. Be sure to pay attention to
the data being backed up.
Start: Goto Duplicator Pro ❯ Schedules ❯ click the 'Add New' button in the upper right corner.
Name: Give the schedule a descriptive name for example see Add/Edit section above.
Copy From: Optionally copy from an existing schedule see "Copy From" in upper left.
Template: Select existing template, choose default or add a new template.
Existing Template:
If you have already created a template and know the settings of that template and would like to re-use it then select from the templates in the drop-down.
Default Template:
The default template is an editable template, however when the plugin is first installed the default template does not have any filters and includes all
the data from an existing WordPress site.
Add Template:
A Template simply stores the layout for how you want to create a package. The Template allows users to exclude files/directories/extensions and database tables from
being backed up. The process is almost identical to creating a package.
For a complete overview on how to add/remove file and table filters visit the Archive section in the
Packages » New - Step 1: Setup user guide.
Storage: Choose at least one storage location where the package and installer will be stored at.
Repeats: Choose the frequency and duration for how often the schedule should run.
Start Time: Choose the time of day you want the schedule to start on. Values are 00:00 (12am) to 23:00 (11pm).
Activated: Choose if the schedule is active to run. Finally save the schedule and wait for the schedule timed.
After your schedule has been saved its best (but not required) to run a test of the schedule. This process can be done from the main schedules screen by finding the schedule you just made
and clicking the Run Now Link. This is an optional step that will you allow the schedule to be ran right now and determine if any issues arise with the build.
If a schedule runs and fails an email will be sent to the email provide in the Settings ❯ Schedules ❯ Email Address field. It is common for schedules to
fail from time to time. If you find that a schedule fails just attempt a 'Run Now' and validate that it can run. If the issues fails on more that 3-4 attempts then an inspection
of the logs may show what is preventing the schedule from running successfully.
The local server storage option allows for the package (installer/archive) to be stored at any physical path on your server that PHP has access to. In Duplicator
Lite all data is stored to the wp-snapshots folder off the root of your WordPress site. With Pro the package data can be stored to a path that you designate.
Otherwise it will be stored to a default location in the wp-content directory. This option can be handy if you need or want to specify the path for storing
your package.
Settings:
Item
Description
Name/Notes
The storage name and optional notes about the local server path
Storage Folder
The full path on the server where you would like the package (installer.php/archive.zip) stored. On Linux systems start with '/'. On Windows use drive
letters. (e.g. /mypath or E:/mypath). Be sure that PHP has permissions to write to the path provided. If the path does not exist then Duplicator
will try to create the path.
Not all server paths are supported on the local server as they can conflict with existing WordPress core functionality or other themes and plugins.
Below is a list of paths that can not be used as a backup path. **Locations that are not allowed**
- Directly to the site WordPress root
- An already existing 'Local Server' path
- An already existing folder in wp-content (must delete first)
**Text not allowed in storage folder input**
*/wp-admin/*
*/wp-includes/*
*/wp-content/plugins/*
*/wp-content/themes/*
*/wp-content/upgrade/*
*/wp-content/backups-dup-lite/*
*/wp-content/backups-dup-pro/*
Filter Protection
When checked this will exclude the 'Storage Folder' provided directly above and all of its content and sub-folders
from being included in a package build. This setting is highly recommended and failure to check this option can lead to build failures.
Max Packages
Specify the number of packages to keep in 'Storage Folder'. Setting 10 will keep the last 10 packages. Set to 0 for no limit. It is recommended
to keep this number low. Storing too many packages can lead to space allocation issues, especially if your limited for disk space.
Step-By-Step:
Create New Storage Provider: Duplicator > Storage > Add New
Add Name and Notes and select Type: Local Server
Provide the full path on your local server to where the package will be stored
Leave the Filter Protection check-box checked
Enter the number of packages you want to persist for this storage location
See this full online guide for a complete overview of setting up an Amazon S3 storage endpoint.
The Amazon S3 is a very good cloud storage system. However the setup for S3 can be much more involved than its counter
parts. If you are looking for a quick and easy setup we recommend first trying Dropbox or Google Drive.
Duplicator Pro supports Backblaze to store packages built by Duplicator Pro. It is essential to store your backup in a remote location instead of saving it locally.
If a hosted machine is down, the remotely stored package can be restored quickly on any other machine, and your WordPress website will be up.
Documentation for Backblaze B2: Overview, and
S3 Compatible API.
Settings:
Item
Description
Name/Notes
The storage name and optional notes about the local server path
SETTINGS
Key ID
For the purposes of terminology, the Application Key and Application Key ID are the equivalent of the Secret Access Key and Access Key ID respectively.
Application Key
Application keys control access to your B2 account. You can get the master application key for your account from the B2 Cloud Storage Buckets page on
the Backblaze web site. For full details on the Application Key see the
documentation here
Endpoint URL
The endpoint URL
Region
The Geographical location
Storage Folder
Folder where packages will be stored. This should be unique for each web-site using Duplicator.
Bucket
S3 Bucket where you want to save the backups.
Max Packages
Specify the number of packages to keep in 'Storage Folder'. Setting 10 will keep the last 10 packages. Set to 0 for no limit.
It is highly recommended to keep this number low. Storing too many packages can lead to space allocation issues.
Connection
Validate that the credentials and settings entered above are working.
Duplicator Pro supports several 3rd Party vendors such as Wasabi and Google Cloud to store packages built by Duplicator Pro. It is essential to store your backup in a remote location instead of saving it locally.
If a hosted machine is down, the remotely stored package can be restored quickly on any other machine, and your WordPress website will be up.
Settings:
Item
Description
Name/Notes
The storage name and optional notes about the local server path
CREDENTIALS
Access Key
The Access Key provided by the 3rd party vendor
Secret Key
The Secret Key provided by the 3rd party vendor
SETTINGS
Bucket
S3 Bucket where you want to save the backups.
S3 Storage Provider
Choose 'Other' for S3-compatible storage other than Amazon (Wasabi, Digital Ocean, Dreamhost, Minio, etc...)
Region
The Geographical location
Storage Folder
Folder where packages will be stored. This should be unique for each web-site using Duplicator.
Storage Class
Choose from Reduce Redundancy, Standard, Standard IA
Max Packages
Specify the number of packages to keep in 'Storage Folder'. Setting 10 will keep the last 10 packages. Set to 0 for no limit.
It is highly recommended to keep this number low. Storing too many packages can lead to space allocation issues.
Connection
Validate that the credentials and settings entered above are working.
WasabiWasabi Cloud Storage
Step-By-Step guide for setting up Wasabi
Once you submit the signup form, you will receive an email to create an account in Wasabi.
Click on the "Create Account" button displayed in the received email and create a new Wasabi account
After creating an account, You will be logged in to the Wasabi console automatically.
Wasabi.com: Create a Bucket in Console:
Go to the buckets Menu page and click on the "CREATE BUCKET" button.
Fill bucket name and region in create bucket popup box. The bucket name should start with a lowercase letter or numeric value, and should be a valid DNS server name.
Note: the region name that you filled in. It will be used to connect Duplicator Pro with Wasabi later.
Wasabi.com: Copy User Access and Secret Access Keys
Go to the Wasabi console > Settings menu page.
Click on the "CREATE NEW ACCESS KEY" button to create an access key.
Check the "Root User" labeled radio checkbox in the create new access key popup box & click the "Create" button.
Duplicator Pro: Setup new Storage Type
Go to Duplicator Pro ❯ Storage ❯ enter storage name field with your a name.
Choose the "Amazon S3 (or Compatible)" storage type value.
Copy Access Key and Secret Key values from the Wasabi console and paste them in the Duplicator Pro Wasabi storage form opened in your other browser tab.
Go to your website's remote storage endpoint form tab ❯ fill in the bucket name field value.
Check the S3 storage provider "Other" radio box.
Fill in the region name that you have chosen when creating a bucket in the Wasabi console.
Note: If you do not have the region name of the bucket, go to Wasabi console ❯ buckets, find a bucket list table with region information along with
associated buckets.
The EndPoint URL is the Wasabi Storage Service URL. To find the Wasabi Storage Service URL of the Wasabi bucket, go to the official Wasabi support page for the
service URLs for Wasabi's different storage regions and find Wasabi service URL according to your created bucket region. Copy the Wasabi service URL and paste it
into the Endpoint URL of the Wasabi storage endpoint form of Duplicator Pro.
If you want to save packages in the root folder, fill the storage folder field with the "/" (without inverted comma) value.
Test Storage Endpoint:
Check if the configuration worked properly by clicking the Test S3 Connection button. If it reports success you are good to go. If not, go through the previous
steps and make sure you didn't miss anything.
Google CloudGoogle Cloud Storage via Amazon S3
Step-By-Step guide for setting up Google Cloud via Amazon S3
Note: This setup is not for Google Drive but for Google cloud through Amazon S3.
Bucket Configuration
Goto Google Cloud Console ❯ Cloud Storage
Click "Create" from "Buckets" list ❯ Enter bucket name, click "Continue"
Choose Region ❯ Choose the default storage class
For Access Control, choose "Uniform" or "Fine-grained"
For Protection Tools, choose "None" or "Object versioning"
Do not choose Retention policy - Duplicator Pro does not support this
Creating a Service Account and Configuring Duplicator Pro
Goto Duplicator Pro ❯ Storage and click "Add New"
Select "3rd Party S3 Provider" for the Type ❯ Enter Name
Open Google Cloud Console in a new browser tab or window
Goto Cloud Storage ❯ Click the Settings link on the left menu
Click the Interoperability tab
Click "Create a Key for a Service Account"
Click "Create New Account"
Enter the Service account name and description
Click "Create and Continue"
For role, select "Owner" ❯ Click Done
Note: Lower-level roles are recommended, but that is dependent on how you have set up your system - refer to the Google Documentation for this.
Legacy Bucket Writer and Legacy Bucket Owners are examples of two other roles that work. In short, ensure the role used has the following
permissions: storage.objects.create, storage.objects.delete, storage.objects.get, storage.objects.list, storage.objects.multipartUploads.
Copy the Access Key value shown in the Google Console and paste it into the "Access Key" field in the Duplicator Pro browser tab
Copy the Secret value shown in the Google Console and paste it into the "Access Key" field in the Duplicator Pro browser tab
Enter https://storage.google.apis.com in the Endpoint URL
Enter Storage Folder, Bucket Name, and Max Packages
Set Enable Full ACL as you wish
Note: If the bucket has "Uniform" access control then this checkbox must be unchecked
Save Storage Item
Note: When creating a new package or schedule you will check the box for this storage endpoint to be a location where the package (archive.zip and installer.php)
will be transferred to after it has been created.
Duplicator Pro can push your backups to the Dropbox cloud service. All packages are initially built on the local server and then pushed up
to Dropbox using its API services.
Settings:
Item
Description
Name/Notes
The storage name and optional notes about the local server path
Authorization
This process will validate your Dropbox account and allow for Duplicator to communicate with Dropbox. Once validated the name and email associated
with the Dropbox account will be displayed in the 'Authorization' section. To cancel and remove the storage settings from Dropbox click the
'Cancel Authorization' button. This disassociates this storage provider with the Dropbox account.
Storage Folder
This is the folder on the Dropbox servers where packages will be stored. This should be unique for each web-site using Duplicator.
Max Packages
Specify the number of packages to keep in 'Storage Folder'. Setting 10 will keep the last 10 packages. Set to 0 for no limit. It is recommended
to keep this number low. Storing too many packages can lead to space allocation issues.
Connection
Once your account as be 'Authorized' you can test the connection to make sure there are no interruptions. This can also be useful if you
are experiencing issues with file uploads.
Step-By-Step:
Create New Storage Provider: Duplicator > Storage > Add New
Add Name and Notes and select Type: Dropbox
Under Authorization: Click "Connect to Dropbox"
Step 1 Click Authorize Dropbox
This will open a new browser window/tab to dropbox.com
Click the "Allow" Button and wait for Success Message
Close the dropbox.com site window/tab and go back to Duplicators interface
Under Authorization Step 2: Click the Finalize button
Duplicator is now authorized to access the following Dropbox account
Click the 'Test Dropbox Connection' button to validate data can be moved between systems.
Finally Click the "Save Provider" button to save this Dropbox storage endpoint
Now when creating a new package or schedule you will check the box for this storage endpoint to be a location where the package (archive.zip and installer.php)
will be transferred to after it has been created.
Duplicator Pro can push your backups to the Google Drive cloud service. All packages are initially built on the local server and then pushed up
to Google Drive using its API services.
Settings:
Item
Description
Name/Notes
The storage name and optional notes about the local server path
Authorization
This process will validate your Google Drive account and allow for Duplicator to communicate with Google Drive. Once validated the name and email
associated with the Google Drive account will be displayed in the 'Authorization' section. To cancel and remove the storage settings from
Google Drive click the 'Cancel Authorization' button. This disassociates this storage provider with the Google Drive account.
Storage Folder
The folder on the Google Drive servers where packages will be stored. This should be unique for each web-site using Duplicator.
If the directory path above is already in Google Drive before connecting then a duplicate folder name will be made in the same path. This is because
the plugin only has rights to folders it creates.
Max Packages
Specify the number of packages to keep in 'Storage Folder'. Setting 10 will keep the last 10 packages. Set to 0 for no limit. It is highly
recommended to keep this number low. Storing too many packages can lead to space allocation issues.
Connection
Once your account as be 'Authorized' you can test the connection to make sure there are no interruptions. This can also be useful if you
are experiencing issues with file uploads.
Step-By-Step:
Create New Storage Provider: Duplicator > Storage > Add New
Add Name and Notes and select Type: Google Drive
Under Authorization: Click "Connect to Google Drive"
Step 1: Click Authorize Google Drive
This will open a new browser window/tab to accounts.google.com
If you have multiple Google accounts then choose the account you would like to use
Click the 'Allow' button and copy the long code generated.
Step 2: Go back to Duplicators interface and paste the code into the input titled Step 2
Step 3: Click the 'Finalize Setup' button
Duplicator is now authorized to access the following Google Drive account
Click the 'Test Google Drive Connection' button to validate data can be moved between systems.
Finally Click the "Save Provider" button to save this Google Drive storage endpoint
Now when creating a new package or schedule you will check the box for this storage endpoint to be a location where the package (archive.zip and installer.php)
will be transferred to after it has been created.
Duplicator Pro can push your backups to the OneDrive cloud service. All packages are initially built on the local server and then pushed up
to OneDrive using its API services.
Settings:
Item
Description
Name/Notes
The storage name and optional notes about the local server path
Authorization
This process will validate your OneDrive account and allow for Duplicator to communicate with OneDrive. Once validated the name and email associated
with the OneDrive account will be displayed in the 'Authorization' section. To cancel and remove the storage settings from OneDrive click the
'Cancel Authorization' button. This disassociates this storage provider with the OneDrive account.
Note: If you have already logged into OneDrive via your browser then you may not be prompted for a username and password if the brower
determines you are already logged in.
Storage Folder
This is the folder on the OneDrive servers where packages will be stored. This should be unique for each web-site using Duplicator.
Max Packages
Specify the number of packages to keep in 'Storage Folder'. Setting 10 will keep the last 10 packages. Set to 0 for no limit. It is recommended
to keep this number low. Storing too many packages can lead to space allocation issues.
Connection
Once your account as be 'Authorized' you can test the connection to make sure there are no interruptions. This can also be useful if you
are experiencing issues with file uploads.
Step-By-Step:
Create New Storage Provider: Duplicator > Storage > Add New
Add Name and Notes and select Type: OneDrive
Under Authorization: Click "Connect to OneDrive"
Step 1 Click Authorize OneDrive
This will open a new browser window/tab to OneDrive.com to login.
- OR -
If your are logged in this step will be skipped.
A unique code will be generated at snapcreek.com from onedrive.com. Copy this code.
Under Authorization Step 2: Paste the unique code.
Under Authorization Step 3: Click the "Finalize Setup" button
Duplicator is now authorized to access the following OneDrive account
Click the 'Test OneDrive Connection' button to validate data can be moved between systems.
Finally Click the "Save Provider" button to save this OneDrive storage endpoint
Now when creating a new package or schedule you will check the box for this storage endpoint to be a location where the package (archive.zip and installer.php)
will be transferred to after it has been created.
Duplicator Pro can push your backups to an FTP location. All packages are initially built on the local server and then pushed up
to the FTP endpoint.
Settings:
Item
Description
Name/Notes
The storage name and optional notes about the local server path
CREDENTIALS
Server
The FTP server name. Please see your FTP server documents for the correct server name
Port
The FTP server port. Please see your FTP server documents for the correct server port
Username/Password
The FTP username/password. Please see your FTP server documents for the correct username/password
SETTINGS
Storage Folder
The folder on the FTP servers where packages will be stored. This should be unique for each web-site using Duplicator.
Max Packages
Specify the number of packages to keep in 'Storage Folder'. Setting 10 will keep the last 10 packages. Set to 0 for no limit. It is highly
recommended to keep this number low. Storing too many packages can lead to space allocation issues.
Timeout
How long should Duplicator wait when trying to connect
SSL-FTP
Should the connection attempt to use FTPS to connect to the server. This option needs to be supported and configured correctly on the FTP server
before it will work correctly.
Passive Mode
Should this connection use FTP passive mode.
Connection
Validate that the credentials and settings entered above are working.
Step-By-Step:
Create New Storage Provider: Duplicator > Storage > Add New
Add Name and Notes and select Type: FTP
Under Credentials: Enter in all the required FTP credentials
Click the 'Test FTP Connection' button to validate data can be moved between systems.
Finally Click the "Save Provider" button to save this FTP storage endpoint
Note: When creating a new package or schedule you will check the box for this storage endpoint to be a location where the package (archive.zip and installer.php)
will be transferred to after it has been created.
Duplicator Pro can push your backups to an SFTP location. All packages are initially built on the local server and then pushed up
to the SFTP endpoint. Please Note: That SFTP is not the same as FTP or FTPS. SFTP uses the SSH protocol for transferring files.
Settings:
Item
Description
Name/Notes
The storage name and optional notes about the local server path
CREDENTIALS
Server
The SFTP server name. Please see your SFTP server documents for the correct server name
Port
The SFTP server port. Please see your SFTP server documents for the correct server port. The standard default port is 18765.
Username/Password
The SFTP username/password. Please see your SFTP server documents for the correct username/password. Note: FTP accounts created
on a cpanel host in general are not usable for SFTP accounts.
Private Key
A private key file generated on your hosts server. Please contact or visit your hosts documentation for setting up a private key.
Private Key Password
The password associated with the private key. Please contact or visit your hosts documentation for setting up a private key password.
SETTINGS
Storage Folder
The folder on the SFTP servers where packages will be stored. This should be unique for each web-site using Duplicator.
Note: This path must be setup ahead of time correctly for the test connection to work
Max Packages
Specify the number of packages to keep in 'Storage Folder'. Setting 10 will keep the last 10 packages. Set to 0 for no limit.
It is highly recommended to keep this number low. Storing too many packages can lead to space allocation issues.
Timeout
How long should Duplicator wait when trying to connect
Connection
Validate that the credentials and settings entered above are working.
Step-By-Step:
Create New Storage Provider: Duplicator > Storage > Add New
Add Name and Notes and select Type: SFTP
Under Credentials: Enter in all the required SFTP credentials
Click the 'Test SFTP Connection' button to validate data can be moved between systems.
Finally Click the "Save Provider" button to save this SFTP storage endpoint
Note: When creating a new package or schedule you will check the box for this storage endpoint to be a location where the package (archive.zip and installer.php)
will be transferred to after it has been created.
Answer
Each storage location has a setting titled 'Max Packages'. When this limit is exceeded, the oldest package will be deleted. If set to 0 then no packages are
removed. To enable goto Duplicator Pro ❯ Storage ❯ Edit Storage Item ❯ Set Max Packages.
Because the max packages is tied to each storage endpoint the main packages screen will still contain an entry or audit trail of the transaction. For example
ff the package the 'Default storage type' is set to say 3 'Max Packages' then only the 3 top most packages in the package screen will have a Download button
that works because the local default packages have been removed.
Question C
How to prevent manual builds from getting counted in scheduled max builds?
Answer
The best way to separate manual build packages from scheduled build packages is to assign different storage locations. Since the storage location is the component that defines
the "Max packages" setting. Also, when creating different storage types make sure they point to a slightly different path. If they are pointing to the same directory then they
will interfere with one another. For instance you could set things up like:
The logging tab shows the various log files that Duplicator generates. There are currently two types of log files, the first is the trace log which is only
available in Pro. The second is the package log which is available in both Pro and Lite. Below is a synopsis for each file.
Trace Log:Pro The trace log file records all information that is going on at all times with the plugin. Since multiple requests can be executed by multiple
users the trace log takes all communication from the plugin into consideration and logs that data. To further improve the full picture of all activity going on
in PHP on the server (not just Duplicator Pro). There is an options in Settings ❯ General ❯ Debug labeled "Enhanced Tracing" screen. This option
will also log all trace log activity to the PHP error log.
Package Log: The package log is a log file that is generated for every package that is built. The log will show the progress and state of the package and
will most errors/warnings that may happen during the creation of a package file.
The default log selected will be the trace log in Pro and in Lite it will be the last package log. There are currently two trace log files stored in your default
store location. The active trace log and a running backup log which will be labeled *.log1. The running backup will be created once your primary trace log starts
to get too large.
Each log file is represented as a link. Click on the link name and the log will be visible in the output window. To update the log click the refresh button or have it auto
refresh every 10 seconds by enabling the 'Auto Refresh' option.
Enhanced tracing is used for gather detailed information from your entire system. This option should only be enabled for a short time and is normally only used
to debug any issues that might arise on your system. When "Enhanced Tracing" is enabled a notification link will show on the right corn of the screen as long
as it is on.
The diagnostics tab contains various sections that allow you to evaluate your servers setup. The various sections are each described below.
Stored Data:
This section allows users to delete all reserved installation files after a fresh install has taken place. Other options to clean up various build and Duplicator
cache files are available. All options that are stored in the WordPress options table pertaining to Duplicator Pro are visible. With some options having the ability to
be reset.
Server Settings:
This section contains various server settings that can be beneficial should you run into issues using the plugin. The settings are all organized into various categories.
The section "PHP Information" is also a large sub-set of information produced by the phpinfo function.
Scan Validator:
This utility will help to find unreadable files and sys-links in your environment that can lead to issues during the scan process. The utility will also show how many files
and directories you have in your system. This process may take several minutes to run. If there is a recursive loop on your system then the process has a built in check
to stop after a large set of files and directories have been scanned. A message will show indicated that that a scan depth has been reached.
The support tab contains various sections that allow you to quickly link-up to the FAQ system or knowledge base. Access to the help ticket system is also available here.
Please note that there are different levels of support.
Lite: This allows anyone to get help with the free product. Response times can vary widely as all lite requests are handled after the pro users have
been addressed. Response times can vary from 1-5 business days.
Pro Personal: This support level is for all pro personal users. All tickets will be handled before Lite users, but after Pro Freelancer+ users.
Response times for most requests will be within 2 days or less depending on the complexing of the response.
Pro Freelancer/Business/Gold: This level includes all Freelancer/Business/Gold users. All tickets will be handled before
Lite and Pro Personal users. Response times for most requests will be within 24 hours.
The "Templates » All" screen is the main interface for managing all templates that have been created. Templates are used to profile out how a package will be built.
Templates allow you to choose which files and database tables you would like to make as part of your backup process. It also allows for the installer to be
pre-filled with the values of the template.
Use Cases:
Schedules: All schedules require templates to be used when running a schedule
Profiling: There may be instances where you only want the database or the database with specific tables. There may be an instances where you only
need the database with a certain subset of files. There are many different combinations that can make up your package and with templates you can easily
and quickly assign these profiles when you start a build.
The Add/Edit interface allows users to add and edit existing Templates. To quickly stub out existing templates use the "Copy From" action in the right hand
corner of the screen.
Archive:
Item
Notes
Name/Note
A short descriptive name for the package template.
FILES
This section will mirror the same file/folder filter settings that can be assigned to a package when it is created.
DATABASE
This section will mirror the same database table filter settings that can be assigned to a package when it is created. The 'Compatibility Mode' option
is not available as a template setting. It can only be used when creating a new package. Please see the FAQ for a full overview of using this feature.
Installer:
Item
Notes
SETUP
This section will mirror the same setup settings that can be assigned to the installer file setup process.
STEP 1/2
This section will mirror the same setup settings that can be assigned to an package installer file wizard setting when it is created.
Start: Goto Duplicator Pro ❯ Templates ❯ click the 'Add New' button in the upper right corner
Copy From: This is an optional step that will allow you to copy from an existing template
FILES: Apply any file filters to exclude specific file/directories/extensions
DATABASE: Apply any table filters that should not be included as part of the package
INSTALLER: Apply the installer setup values you would like to be applied to the package
Save: Save the template by clicking the 'Save Template' button.
Apply Template
Start: Goto Duplicator Pro ❯ Packages ❯ click the 'Create New' button in the upper right corner
Apply Template: The template you made in the step Create Template section above should be visible in the dropdown
After selecting your template all of the values in the Archive and Installer section should reflect the values saved in the template
To undo the applied template just select the [Unassigned] value and the package settings will default to its last created settings
Templates are also one of the key parameters when creating a schedule. Templates can be used to schedule a database backup everyday and a full
site backup once a week. With templates you have the flexibility to customize the contents of your package.
A Recovery Point allows one to quickly restore the site to a prior state. To use this, mark a package as the Recovery Point, then copy and save off the associated URL.
Then, if a problem occurs, browse to the URL to launch a streamlined installer to quickly restore the site.
Requirements:
The recovery point has one main purpose and that is to capture your entire site and restore it exactly as it was. In order to create a valid recovery point the following
requirements must be applied to your archive.
Local Server Storage
Recovery points require one of the following 'Local Server' storage types:
[Local Default] This is the default built-in local storage type.
[Local Non-Default] This is a custom directory on this server.
WordPress Core Folders
A recovery point needs all WordPress core folders included in the package (wp-admin, wp-content & wp-includes).
Primary Database Tables
All database tables with the WordPress prefix (default is 'wp_') must be included in the package for this to be an eligible recovery point.
Use Cases:
The following use cases determine when a recovery point should be used:
Full Restore - Yes
A recovery point is currently only supported as a full backup of your site and use it as a recovery system. A recovery will capture your entire site and
restore it exactly as it was pending you don't create any file or database table filters.
Partial Restore - No
To try and restore portions of your site you should not use the recovery point. Instead you should create an archive with the uploads folder filtered out, and then save that
archive/installer off somewhere. If/when you need to restore your site you could just copy the installer and archive to the root of the site and browse to the installer.
This will overwrite the database and any folders that are contained within the archive. For more details about this process see
Various strategies for data migration Scenario 1-A.
Step By Step:
Recovery Step 1: Choose a recovery point from the drop-down. Only valid packages that are "Recover capable" will be listed. Users can also use the "Packages view"
to set a recovery point.
Recovery Step 2: Copy the generated URL link to a safe location. This link can be used to reinstall the recover point that was created.
Launch Installer: This will launch the installer wizard which will run users through the necessary steps to install the imported package.
The recovery point is not mandatory to perform an import. However, it can assist in restoring this site if there is a problem during install.
If you have no need to recover a site then you can continue without creating the recovery point.
The "Settings ❯ General" screen is the main interface for managing all general settings for the plugin. There are currently two main sections "Plugin" and "Debug".
The Plugin area controls settings related to the use and interaction of the plugin in the context of the WordPress environment. The Debug area is used to enable
debug utilities.
Schedules use predefined templates to run from. Templates allow you to choose which files and database tables you would like to make as part of your backup process.
A schedule can also be tied to a storage endpoint and pushed upto the cloud as part of its runtime directive.
Details:
Item
Notes
PLUGIN AREA
Version
The current version of this plugin
Uninstall
Delete Plugin Settings: By default when the plugin is removed all settings for the plugin are still saved. If you would like to remove all setting
such as those found in the settings page or items like schedules and storage location then check the checkbox and when the plugin is deleted it will
also remove all settings data.
Delete Entire Storage Directory: By default when the plugin is removed all packages for the packages screen are still saved to disk. If you
would like to remove all packages (installer.php and archive.zip files) then check the checkbox and when the plugin is deleted it will
also remove all package files.
Custom Roles
This enables integration with the User Role Editor Plugin.
allowing Duplicator to have custom security roles.
DEBUG AREA
Trace Log Pro
The trace log helps support better debug system issues. This setting should only be enabled if directed so by the snapcreek support team.
Package Debug
Enable additional debug information on the packages screen.
The Migrate Settings tab available only with Freelancer/Business/Gold licenses allows users to move settings from schedules, storage, templates and global settings of one installed instance of Duplicator Pro to another installed
instance of Pro. This feature can come in handy if you you don't want to re-create the setup environment after you have installed the plugin. This feature will only
work with Duplicator Pro settings.
Export/Import:
Export: The export section allows users to export all schedules, storage locations, templates and settings from this Duplicator Pro instance into a
downloadable export file. The export file can then be used to import data settings from this instance of Duplicator Pro into another plugin instance of
Duplicator Pro or the same instance if your need to restore from a previous date.
After clicking the Export Data button the process will:
Export all schedules, storage and templates to a file for import into another Duplicator instance.
For security purposes, restrict access to this file and delete after use.
Import: The import section allows users to import settings from another Duplicator Pro plugin into another instance of Duplicator Pro. Schedule, storage and
template data will be appended to current data, while existing settings will be replaced. Schedules depend on storage and templates so importing schedules will
require that storage and templates be checked. The import process will:
Append schedules, storage and templates if those options are checked
Overwrite current settings data if the settings option is checked
After the import is ran its import to review templates and local storages to ensure correct path values as the import will not convert them.
Step By Step:
Check Data: Be sure all your schedules, storages, templates, and settings data is setup to your liking
Export: Navigate to Duplicator Pro ❯ Tools ❯ Data Tab and click the 'Export Data' button
Save Export: Save the export.dup file to a safe location as it contains sensitive information
Note location: Navigate to a different install unless your restoring a backup of a previous export
Select File: Choose the *.dup file used from the 'Save Export' step
Run Import: Click the 'Import Data' button and be sure to read all prompts
Check Data: Validate that all data was updated and note the following:
Schedule, storage and template data will be appended to the current data sets, if data exists. No data on these sections will be overwritten
All Settings from the Duplicator Pro ❯ Settings menu including all tabs General, Packages, Schedules, Storage, Licensing will be overwritten
After the import is ran its import to review templates and local storages to ensure correct path values. The import will not convert any server or
URL paths so these items should be checked and tested to make sure they are working as expected.
The "Settings ❯ Packages" screen is the main interface for managing all package related settings for the plugin. This includes items such as the main "Packages" screen
and how a package is built and the processing rules used to build the package.
Details:
Item
Notes
VISUAL
Created Format
This option controls the date format shown in the 'Created' column on the Packages screen. Use this option to display how the dates will be displayed
Database
SQL Script
Duplicator can build the sites database script in two ways. The preferred and recommend approach is to use
mysqldump. However some systems do not
support this method for building, therefore users can still rely on PHP code to create the correct database script.
MySQLDump: This is the recommend setting. On some setups users may have to provide a custom path to the mysqldump program. Add a custom path if
the path to mysqldump is not properly detected or needs to be changed. In some cases you may have to contact your server admin or hosting provider
for the correct path.
PHP Code: This option should be used if mysqldump is not accessible or causing issues in your environment. On some budget hosts you may have to set
the Query Limit Size to a lower setting. A higher limit size will speed up the database build time, however it will use more memory.
If your host has memory caps start off low.
Compression Pro
This setting controls archive compression. Turning compression off can improve build stability and speed but packages will be larger. Can be toggled
when using ZipArchive on a PHP 7+ system of Shell Exec Zip.
Archive Engine
Duplicator can archive the sites files in three ways. The preferred and recommend approach is to use Shell Exec Zip or your system zip command.
However some systems do not support this method for building, therefore users can still rely on PHPs
ZipArchive to create the correct database script.
PHP ZipArchive : Use PHP code to zip up your files. For larger sites on budget hosts its recommended to use the 'Multi-Threaded' setting which
processes the archive file in subsequent HTTP requests. If you have access to how long a PHP process is allowed to run then use the 'Single-Threaded' mode.
This mode runs in the background without an interruptions and is faster than the 'Multi-Threaded' mode.
The buffer size only applies to 'Multi-Threaded' requests. The buffer indicates how large an archive will get before a close is registered with the
ZipArchive call. Higher values are faster but can be more unstable based on the hosts
max_execution_time.
DupArchive: Creates a custom archive format (archive.daf). This option is recommended for large sites or sites on constrained servers. In order to extract a .daf file manually
please see this FAQ How to work with DAF files and the DupArchive extraction tool?
Shell Exec Zip:Pro This is the recommend setting. To get Shell Exec zip working ask your host to install the zip executable and make it accessible
to PHP via the shell_exec command.
Server Throttle Pro
It is recommended to keep this setting off unless you receive a notice from your host. The setting is used to throttle and prevent resource complaints
on budget hosts. The higher the value the slower the backup.
Max Build Time Pro
Max build and storage time until package is auto-cancelled. Set to 0 for no limit.
The "Settings ❯ Packages" ❯ Advanced screen is the main interface for managing all package related settings for the plugin. It is recommended that you
do not modify advanced settings unless you know the expected result or have talked to support or are familiar with the setting.
Details:
Item
Notes
Thread Lock
The lock type used to control atomic operations. The default is File and is recommended for most servers.
JSON
The JSON sterilizer engine that should be used.
AJAX
Controls how AJAX requests are made on this server. Used to kick off build worker. Only change if packages get stuck at start of build.
Client-side Kickoff
Initiate package build from client. Only check this if instructed to by Snap Creek support.
Basic Auth
Enable if your server requires basic auth connections
Installer Name
The base name of the installer file. Only change if host prevents using installer.php
The Settings ❯ Packages ❯ Installer Branding is available in Freelancer/Business/Gold licenses. This feature allows users to add customized branding to the installer.
For example, when enabled a user that browses to the installer might see "My Customer Installer" with a custom logo of the personalized installer vs the default "Duplicator Pro" text and logo.
The branding feature is useful for content creators who want to create their own custom configured WordPress site and "Brand" it with their own look and feel.
The interface consists of two screens.
Brand Lists Screen:
The brand lists screen shows a list of all possible branding options. Users can create as many brand variations as they like. Only one active brand can be enabled at a time.
The brand that is active during a package creation is the one that will be used at install time.
Brand Details Screen:
Item
Notes
Name
The name is a short descriptor that is used on the brand lists screen to quickly identify the branded installer.
Notes
The notes is an optional long descriptor that is used to provide full details about the intent/use of the particular brand.
Logo
This is where all the customization happens. Users are given a preview area and an active html editable area where they can upload
a logo/image and customize the details of the title. Users can optionally replace the "Duplicator Pro" text and logo with their
own customized layout.
Active
When checked this will be the active logo that will be used when the installer is built. The default brand is simply what comes out of the box
with Duplicator Pro, which includes that bolt icon with the title "Duplicator Pro".
Step By Step:
Goto Duplicator Pro ❯ Settings ❯ Packages Tab ❯ Installer Branding ❯ Add New
Fill in the Brand details and customize the look and feel
Check the Active check-box and click save
Build a package and download the installer/archive files to a location where the package can be installed.
In a web browser browse to the newly created installer.php file and observe the newly branded installer.
The full installer user guide (18 pages) is currently available in pdf format. This guide comes bundled with every installer file. The guide supports both Duplicator Pro & Lite
versions. See the flag Pro for pro features.
Answer
When creating a staging site or just a copy of your existing site for testing or basically any reason there are a few rules we strongly encourage uses to follow.
Avoid Nesting: In order to avoid possible conflicts between your sites it is important to separate your sites into completely separate folders.
For example if you have a production site and a staging site the layout might look something like this were the public_html folder is your web servers root path.
/public_html/production_site/[worpress site 1 file/folders here]
/public_html/staging_site/[worpress site 2 file/folders here]
Note: Do not place the staging_site in a or under the production_site directory
Separate Databases:You must create separate databases for each site. So you might create a database named prod_db for the production site and
another database named stage_db for the staging site. Never try to use the database for both sites.
Duplicator Lite does not support any type of migrations with Multisite setups. Migrating a full multisite is supported in all version of Duplicator Pro. Below are
some of the differences to be noted with Multisite setups. For more details see
How does Duplicator handle Multisite support?
Plugin Settings
Duplicator Pro plugin menu appears on the Network Admin menu in Multisite vs the normal admin menu.
Package creation process for "Duplicator Pro - Business" includes extra filters for subsites.
Installer Settings
The install process for Multisite contains additional mappings for subsites in all Pro versions.
Advanced features for subsites or subsite to standalone is only supported in "Duplicator Pro - Business"
Separate Domains
In some Multisite setups a subsite will have its own separate domain name. For example if the original main site is mydomain.com the subsites may be
a.myotherdomain.com and
b.myotherdomain.com but not a.mydomain.com and b.mydomain.com.
Subsites of the same domain will be rewritten to the new domain name by default but when they are in a different domain names
then you have to perform a special procedure. The way to handle this is to do the following:
Installer Step 1 - Switch the to Advanced mode (upper right-hand corner)
Installer Step 3 - Choose 'Mapping' for 'Replace Mode'
Installer Step 3 - Set the new URLs appropriately for each subsite
The section below explains how to install a Multisite as a subdomain.
Localhost Setup
Edit your hosts file to account for all subdomains that are contained in the multisite package and then install to localhost.com which you set up as an alias for localhost.
The hosts file location on windows is: "C:\Windows\System32\drivers\etc" and on MAC" and on MAC "/private/etc/hosts". For example if you have a package with a
multisite containing subsites myoriginalsite.com, sub1.myoriginalsite.com and sub2.myoriginalsite.com.
To install this multisite on localhost do the following:
Add the following to the hosts file:
127.0.0.1 localhost.com
127.0.0.1 sub1.localhost.com
127.0.0.1 sub2.localhost.com
Save the hosts file
Browse to http://localhost.com/installer.php and proceed with the install.
After the installer completes you should be able to properly view localhost.com, sub1.localhost.com and sub2.localhost.com.
Hosting Provider
When working with a public facing server make sure you have set up wildcard DNS if you haven't already (or create specific DNS records for each subdomain site).
The article Configuring Wildcard Subdomains explains how to set up wildcard DNS for use with multisite.
REQUIREMENTS: Package must be built with Duplicator Pro 4.0.3+ and destination site must be running Duplicator Pro 4.0.3+.
This feature requires your plugin is running an active Business or Gold license; see Settings ❯ Licensing.
Step-By-Step:
Below are the steps to import a single, standalone site into a Multisite network
On the source site go to Duplicator Pro ❯ Packages ❯ Create New: build a package (archive/installer)
On the destination Multisite go to Duplicator Pro ❯ Import: Add the archive.zip/daf file from the standalone site
After the archive file is uploaded, click the Launch Installer button
On Step 2 of the import add or copy the recover point (optional) and click the Continue button
Note: Recovery points are optional but are recommended in the event the install runs into issues.
On Import-Installer Step 1 choose Install single site on a Multisite network radio button
Choose the Action drop-down with the action to add as new or replace existing subsite.
Choose the Content Author and set the New Subsite URL slug. This can be any safe URL string.
Click the Validate button and check the results then click Next button and let the installer run.
When the installer is complete Step 2 with show with a status of the install.
If a recovery point was set then then both an "Admin Login" and "Run Recovery" button will show.
Click the Admin Login to the newly created site and validate the install process.
After everything is done you will have a new subsite installed or replaced in your Multisite based on the action chosen above.
REQUIREMENTS: Package must be built with Duplicator Pro 4.0.3+ and destination site must be running Duplicator Pro 4.0.3+.
This feature requires your plugin is running an active Business or Gold license; see Settings ❯ Licensing.
Step-By-Step:
To install a subsite as a standalone site:
On the source Multisite site goto: Duplicator Pro ❯ Packages ❯ Create New: build a package (archive/installer)
Copy package files (archive/installer) to the new host destination directory where the site will be installed
Browse to the installer.php in a web browser such as https://mynewhost.com/mysite_directory/installer.php
On installer Step 1 ❯ Overview - Installation Tab ❯ Install Type: choose "Convert subsite to standalone"
A dropdown containing all the subsites in the package will show. Choose one and continue with the install
The subsite chosen in Step 1 will be installed as a new standalone site
After everything is done you will have a new standalone site based on the subsite. Note that all plugins will have been disabled so you will
have to reactivate those.
REQUIREMENTS: Package must be built with Duplicator Pro 4.0.6+ and destination site must be running Duplicator Pro 4.0.6+.
This feature requires your plugin is running an active Business or Gold license; see Settings ❯ Licensing.
Step-By-Step:
Below are the steps to import a subsite into another (or the same) Multisite network.
On the source Multisite go to Duplicator Pro ❯ Packages ❯ Create New: build a package (archive/installer)
On the destination Multisite go to Duplicator Pro ❯ Import: Add the source Multisite archive.zip/daf file
After the archive file is uploaded, click the Launch Installer button
On Step 2 of the import add or copy the recover point (optional) and click the Continue button
Note: Recovery points are optional but are recommended in the event the install runs into issues.
On Import-Installer Step 1 choose Install subsites on Multisite network radio button
Choose the Subsite drop-down with the Multisite subsite you would like to import.
Choose the Action drop-down with the action to add as new or replace existing subsite.
Repeat above two steps for remaining subsites you wish to import.
Click the Validate button and check the results then click Next button and let the installer run.
When the installer is complete, Step 2 show a status of the install.
If a recovery point was set then then both an "Admin Login" and "Run Recovery" button will show.
Click the Admin Login to the newly created site and validate the install process.
When complete, you will have a new subsite installed or replaced in your Multisite based on the action chosen above.
The steps to copy/clone a Multisite-Subsite that is inside the same Multisite Network is currently the same steps used in
Multisite-Subsite ❯ Multisite-Subsite [Different Network].
The main implication that the "source" site and "destination" site are the same site. These steps will change in future versions of the plugin.