Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

A Duplicator write-access error means the destination directory cannot be written by the account or web-server process running the migration. Fix the specific path’s ownership and permissions first (755 for directories, 644 for files), then rule out PHP execution blocks, security rules, and host restrictions. Never “solve” it by changing the whole site to 777.

What a Duplicator write-access error actually means

During a migration, Duplicator must create or extract files, write temporary data, and sometimes update wp-content, wp-content/uploads, or its own storage directory. The error appears when the operating-system owner, group, or permission bits do not allow the user running PHP to perform that operation. A file being visible and editable through FTP does not prove that the web-server process has the same access.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

WordPress’s guidance is that anything requiring write access must be writable by the web server when the hosting configuration requires it, and that wp-content is intended to be writable by both the account and the web-server process. Duplicator also identifies PHP execution blocks, .htaccess rules, security plugins, and host security controls as separate reasons an installer may fail. Therefore, a “permission denied” message and a 403 response need different checks.

Use a safe permission baseline

Start with the narrowest correction: the exact destination directory named in the error, rather than the entire hosting account. The standard baseline is:

#1 Best Overall
Sale
Compressed Air Duster,130000RPM Super Power Cordless Air Duster,Rechargeable Brushless Blower,3 Gear Adjustable Blower with LED Light,Dust Remover for Computer/House/Outdoor/Car
  • Powerful Turbo Fan:CAGIWIRU Electric Air Duster have reached speed up to 130000RPM,Can efficient remove dust and debris.With LED light and Three Adjustable Speed to meet with different cleaning tasks.
  • With Attached USB C Fasting Charging cable.Charing 3 hours,Enjoy up to 240 minutes of use on the lowest setting, For third speed can use for 25mins.with four charging options to meet with your needs.
  • Wide Application: attached 5 different nozzles,making it suitable for a variety of scenes, such as car,pet, pc, keyboards, and other electronic devices. It also serves for office and home clean duster.
  • Handy Design & Portable:Cordless air duster electric nozzle is Light weight and small size, design and comfortable to hold and space saving, convenient to carry around. You can put it in your room or inside the car without taking up space.
  • Economical &Reusable: Built durable materials with a long-lasting battery,our CAGIWIRU air duster it's a sustainable alternative to disposable air cans.
Item Baseline What must be true
Directories 755 The owner can read, write, and enter the directory; the web-server process can read and enter it, and can write where the host’s ownership model permits.
Files 644 The owner can write; the web-server process can read and, where required by the host, write.
Ownership and group Host-approved account/group The PHP/web-server user is the owner or belongs to a group with the required access.
777 Never use It allows any local process or account to modify the files and is not a safe migration fix.

On a server with shell access, WordPress documents these baseline commands. Replace the example path with the real installation path and use the owner and group approved by your host:

find /path/to/your/wordpress/install/ -type d -exec chmod 755 {} ;
find /path/to/your/wordpress/install/ -type f -exec chmod 644 {} ;

Those commands change modes, not ownership. If files were created by a different FTP account, a deployment user, or an earlier hosting account, the web server may still be blocked. Ask the host to repair ownership or use its documented “reset permissions” function. Without shell access, use the host file manager’s permission and ownership controls or ask support to apply the correction.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Establish a clean migration baseline

A controlled upload to an empty, supported directory removes many variables before you troubleshoot an individual error.

  1. Create and download a matching backup. In Duplicator, build the package and download both archive.zip (or archive.daf) and its matching installer.php. Do not mix an installer from one package with an archive from another.
  2. Prepare the destination. Select or create an empty directory that the web server can read and write. Confirm that the directory is mapped to the URL where you intend to run the installer.
  3. Upload both package files. Transfer the archive and installer.php with FTP, SFTP, or the host file manager. Duplicator permits the destination root or another valid URL path, provided the directory permissions and PHP execution rules allow it.
  4. Launch the installer. Visit https://your-domain.example/installer.php (substituting the real domain and path), then complete the database and URL steps shown by Duplicator.
  5. Clean up immediately. When the installation succeeds, remove the installer, archive, and any temporary package artifacts as directed by Duplicator’s cleanup and security guidance. Leaving an installer or backup publicly reachable exposes the site.

Find the exact path that is failing

Read the visible error and the installer log before changing anything. Record the complete path and operation, such as creating a directory, moving an uploaded file, or extracting an archive. Common targets include:

Rank #2
EVEO® Screen Cleaner Spray Kit (Streak-Free) TV Screen Cleaner for Smart TV, Lcd, LEd, Oled | Computer Screen Cleaner Spray and Wipe Microfiber Cloth - TV, Monitor, Laptop, iPad, Car - 6.7oz 1 Pack
  • Screen Cleaner is Your Screen’s New Bestfriend! - EVEO is proud to present a screen cleaner that’s perfectly suited for your TV. Meet your new screen cleaner, computer screen cleaner, laptop cleaner, iPad cleaner, Macbook,tv cleaner or any other electronic device. Our screen cleaner spray and wipe along with the included plush microfiber cloth, easily removes dust, fingerprints & other smudges on the screen’s surface. Clean effectively for a streak-free screen
  • Gentle on your Screens - Our screen cleaner spray and wipes is compatible to be used even for the most sensitive LCD, LED, CRT, and OLED screens in proper use. Be at ease knowing that this product is compatible with all the major brands: LG, SONY, Samsung, Sharp, iPad, iPhone, Android screens, Kindle, PC monitors - we’ve got you covered! Can be used as LCD screen cleaner, tv cleaner, smart tv screen cleaner, and more
  • Premium Super Soft Plush Microfiber Cloth - Included in this efficient screen cleaning kit. This screen cleaner spray and wipe has our signature plush microfiber cloth specially designed to comply with screens and monitors and leave them streak-free. Has been shown to effectively absorbs stubborn stains, zero streaks, and no fiber shedding. Always use this together with our screen cleaner for the best results
  • Easy-to-Use Screen Cleaner Kit + microfiber cleaning cloth - The EVEO Screen Cleaning Kit will easily be your new favorite tool when it comes to taking care of the things you love most, quick and easy solution for a streak-free screen. Simply screw on the sprayer gun on the screen cleaner bottle. Spray the cleaning liquid onto the microfiber cloth, then wipe the screen until desired cleanliness & shine is achieved.
  • Quality Screen Care Kit Worth Purchasing - Enjoy a convenient Screen Cleaner anytime, anywhere you need it. Your satisfaction is our top priority. We stand behind the quality of our products and that’s why, you shouldn’t be worrying at all. We manufacture the Best Screen Cleaner. and can be used for laptop cleaning kit, laptop screen cleaner, tv screen cleaner for smart tv. MacBook screen cleaner, monitor cleaner or screen cleaner spray for electronic devices with microfiber cleaning cloth
  • the new site’s document root;
  • wp-content or wp-content/uploads;
  • wp-content/duplicator-backups or its imports subdirectory;
  • a temporary directory used while the archive is being extracted.

Correct the owner, group, or write bit on that path and its parent directories. Broad recursive changes can create a security problem and may also overwrite permissions deliberately set by the host.

Check permissions and ownership separately

When the directory mode is wrong

Set the affected directories to 755 and ordinary files to 644, then retry the same operation. A directory needs its execute bit to be traversable; giving it read permission alone is not enough. Ensure every parent directory in the path is traversable by the PHP/web-server account.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

When the mode looks correct but writing still fails

Inspect ownership and group membership. A common shared-hosting failure occurs when an archive is uploaded over FTP as one account while PHP runs under another account or a host-managed group. The mode can display 755/644 while the process still lacks write access. The host must align ownership, group membership, or its PHP handler configuration; changing modes repeatedly will not repair a mismatched owner.

When the host applies special filesystem controls

Some managed and shared hosts impose a writable-directory list, read-only deployment releases, quotas, or account isolation. Ask support whether the destination and Duplicator working directory are allowed locations and whether disk quota or inode limits have been reached. Request a targeted permission or ownership repair, not a blanket 777 change.

Rank #3
Sale
BladeHawks RGB Gaming Mouse Pad Extra Large Extended 31.5x12 Inch-Black | LED mouse pad with 14 lighting modes, covers keyboard & mouse, anti-slip rubber base, waterproof surface, USB powered
  • 【Large size】:Measuring 800 x 300 mm/ 31. 5×12 inches, which is wider and taller than others. Large mouse pad can perfectly fit your keyboard and mouse of any size, and there is also ample space for peripherals such as phones, tablets, etc.
  • 【LED backlight mouse pad】:Blade Hawks RGB mouse pad provides 7 static modes and 7 dynamic modes will give you the options you are looking for. Power-off memory function remembers the last lighting mode you selected. The super glow fiber Chroma will give you a colorful gaming setup that you want.
  • 【Anti-slip rubber base】:Made from Natural rubber, this gaming mousepad will firmly grip your desktop, allowing you to enjoy the ultimate precision in the games you are most passionate about. It also comes with a texture that enhances this ability even further.
  • 【Smooth and waterproof surface】: Micro-textured cloth surface, for extremely precise mouse control and a smooth movement. When liquid splashes on the gaming mouse pad, it forms water droplets and slides down. Will not delay your work or gameplay.
  • 【Plug and play】: This mouse and keyboard pad is powered by USB, plug and play, no driver required. One button control light modes. Press one time to change the lighting mode, press twice to change the brightness, press and hold about 3 seconds turn ON/OFF.

Distinguish a filesystem error from a 403 or PHP block

If permissions and ownership are correct but installer.php will not open, the request may be denied before PHP reaches Duplicator.

Inspect .htaccess rules carefully

Look for rules that deny PHP execution, including a <Files *.php> deny block, in the document root and relevant subdirectories. An .htaccess file inside wp-content does not automatically block execution; the actual directives determine the result.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

For a controlled diagnostic, temporarily rename the suspected file (for example, by adding a temporary suffix), test the installer once, and restore the original name immediately afterward. Do not leave security rules disabled, and do not remove unrelated rewrite or protection directives. If renaming changes the result, have the host or administrator replace the rule with a narrow exception for the migration rather than allowing arbitrary PHP execution.

Check security plugins and the web application firewall

Temporarily disable an active security plugin, such as a firewall or login-protection plugin, only long enough to test the migration and only when you can restore it. If the installer or import works while it is disabled, re-enable the plugin and add a specific, documented exception.

Rank #4
Sale
Vaydeer Wrist Rest for Keyboard and Mouse, Computer Ergonomic Wrist Support Pad, Soft Memory Foam Arm Cushion for Desk, Palm Hand Office Laptop Typing
  • 【Softer and More Comfortable】Vaydeer wrist rest has unique diamond pattern, which is the combination of softness and aesthetics. The materials of wrist rest are improved into higher quality memory foam and covered with silky smooth lycra. The computer wrist rest makes you as comfortable and cushiony as like rest your wrists on clouds.
  • 【Ergonomic Wrist Saver】The wrist rests for keyboard and mouse comes with a 17.32×3.15×0.83 inch keyboard wrist pad and a 5.94×3.15×0.83 inch mouse wrist support. Based on ergonomic design, the unique concave shape is the perfect fit for your wrist joints. The wrist rest pad fits most computer keyboards and laptops, improve hand and wrist posture, release your wrist and arm stress.
  • 【Non-Slip Rubber Bottom】Featuring an anti-skid silicone base on the bottom, this wrist keyboard support stays firmly in place on your desk, preventing the padding from sliding around, ensuring stable and consistent wrist support during extended computer sessions.
  • 【Better Experience & Pain Relief】Our keyboard arm rest is beneficial to alleviate the soreness caused by direct contact and friction between your arm and a hard desk surface, reducing the risk of wrist fatigue or carpal tunnel. The soft texture of memory foam can evenly distribute the pressure around your wrists and provide good support with just enough give.
  • 【Helpful in Multiple Scenarios】Whether you're working, studying, writing, typing, gaming, this keyboard and mouse rest combo is an essential accessory to add comfort and support to your hands and wrists. It’s also a great gift for men, women, family, friend, coworker, gamer, teacher, etc.

Ask the host to inspect ModSecurity or Imunify360 logs when the browser shows 403, an AJAX request fails, or an import stops despite correct filesystem settings. The log should identify the rule and request that was blocked. Request a targeted exception for that request or migration window instead of permanently disabling the web-application firewall.

Choose Import or Classic Installation

The right recovery path depends on whether WordPress already exists at the destination and whether the host permits PHP execution in the directory you selected.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Situation Recommended path Why
A working WordPress installation already exists and you can access its dashboard Duplicator Pro Import The archive can be placed in the plugin’s import directory and selected from the dashboard.
Browser drag-and-drop upload fails or times out Manual upload, then Import Transfer the archive with FTP, SFTP, or File Manager instead of relying on the browser.
The archive is in the WordPress root rather than the import directory Classic Installation The standalone installer can use the archive and installer files from the destination path.
The existing site must be replaced Classic Installation or Overwrite Install Mode These paths are designed for an intentional overwrite; verify backups and URL/database details first.
PHP execution is blocked in the chosen folder Use a host-approved execution location Ask the host to permit the installer temporarily or move the files to a supported root path.

Manual Duplicator Pro Import

  1. Transfer the .zip or .daf archive to /wp-content/duplicator-backups/imports with FTP, SFTP, or File Manager.
  2. In WordPress, open Duplicator Pro » Import.
  3. Select the uploaded archive and continue through the validation and installation screens.
  4. If the directory does not exist, cannot be made writable, or is blocked by the host, use Classic Installation instead of widening permissions across wp-content.

Classic Installation

Place the matching archive and installer.php in the destination root (or another valid URL path), then open the installer URL. Duplicator’s documented procedure specifically requires transferring both files to the root path of the destination site. Use Overwrite Install Mode only when replacing an existing site is intentional and you have a verified backup.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Resolve the “uploaded file could not be moved to wp-content/uploads” message

This message can occur while installing or updating a plugin and is not necessarily the same failure as archive extraction. Check the ownership and write access of wp-content/uploads and its parent directories. On hosts that use an FTP filesystem method, follow Duplicator’s separate guidance: disable the FTP components when appropriate or correct the underlying system permissions so WordPress can write directly. Do not switch to insecure global permissions as a workaround.

Best Value
Sale
Under Desk Cable Management Tray No Drill, Metal Mesh Cable Management Under Desk with Clamp Mount, 2 Hole Cable Tray with Wire Management and Cord Organizer for Home Office Standing Desk
  • 【No Drill Mounted】Cable management tray can be assembled in as little as 3 minutes or less-simply. Side clips easily clampe the edge of desk, pass through the holes on the sides, and secure excess cables with baskets. Desk cable management supports inward or outward installation to meet your needs in different scenarios, and provides you with great convenience when collecting and organizing wires.
  • 【Rubber Pad Protects Desk】Wire organizer under desk built-in soft rubber pads on the clamp protect your desk from scratches, so you will not damage your furniture or office.
  • 【Sturdy and Beautiful】Cord management under desk is made of high-quality carbon steel and holds about 15 lbs. The wire basket has 2 holes on each side of the tray to enable your cables to pass freely. Cable baskets are suitable for desk thickness use from 0.4" to 2.4".
  • 【Space Saving & Keep Organized】Desk cable management tray holds all your power cords, outlet strips, USB hubs and computer transformers hidden from your feet, and the data cables will not enter the vacuum cleaner to keep your desk clean and tidy. Desk wire organizer is also suitable for use in the kitchen and outdoors.
  • 【Reduce Safety Risks】Cable tray under desk keeps all plugs away from your kids, no more worry about tripping. Using 2 holes wire tray saves extra space, helps you easily cabling and wire protection. The mesh design is not easy to accumulate dust, but avoids safety accidents caused by messy wires.

Check WordPress configuration and supported versions

The current WordPress.org listing states a minimum of PHP 7.4 and WordPress 5.3 for the plugin. Confirm the destination meets those versions and that the selected PHP handler is the one serving installer.php. A different PHP version between the dashboard and the web request can produce misleading installer failures.

Duplicator’s troubleshooting guidance says Pro 4.5.1 and later include patches that resolve installer-launch issues for most setups. Update to the latest release compatible with the destination before retrying, and create a fresh package after a major version change.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

If plugin changes are disabled, inspect wp-config.php for:

define('DISALLOW_FILE_EDIT', true);
define('DISALLOW_FILE_MODS', true);

DISALLOW_FILE_EDIT removes the built-in editor, while DISALLOW_FILE_MODS blocks plugin and theme installation or updates. Do not remove a deliberate hardening setting on a production site without understanding why it was added; ask the administrator to provide a controlled maintenance window or perform the change.

Use this troubleshooting sequence

  1. Capture the symptom. Note whether it is “permission denied,” a failed write, a 403 response, an installer that will not execute, or an upload move error.
  2. Identify the path. Copy the exact path from the installer log and check its parent directories.
  3. Repair the smallest scope. Apply the host-approved owner/group and the 755-directory/644-file baseline only to the affected destination and working paths.
  4. Retry once. Repeat the same import or extraction step so you can tell whether the change solved that specific failure.
  5. Branch on the result. A continuing filesystem error points to ownership, host restrictions, quota, or the wrong PHP user. A 403 or non-running installer points to .htaccess, a security plugin, ModSecurity, Imunify360, or PHP execution policy.
  6. Switch transfer method. If browser import fails, manually upload the archive to /wp-content/duplicator-backups/imports and use Duplicator Pro Import, or place it with installer.php in the root and run Classic Installation.
  7. Escalate with evidence. Give the host the exact path, timestamp, HTTP status, installer log excerpt, PHP version, and any firewall rule ID. Ask for a targeted correction or exception.
  8. Remove migration artifacts. After success, delete the archive, installer, and temporary files and restore any diagnostic security-file names or firewall settings.

When to fix it yourself and when to ask the host

Self-fix is reasonable when Ask the host or a qualified administrator when
You have SFTP/File Manager access, can identify the exact path, and can change its permissions without affecting other sites. You cannot change ownership, the PHP user differs from the account, or the host controls the group and handler.
The failure is limited to an incorrectly uploaded directory or a known 755/644 mismatch. ModSecurity, Imunify360, a managed WAF, or a host policy returns 403.
You can test in a maintenance window and restore any temporary diagnostic change. The migration overwrites a live site, requires database recovery, or involves a production security exception.

Provide the host with the exact failing path and log details rather than requesting “full permissions.” A support technician can usually correct ownership or whitelist one operation without weakening the rest of the account.

Prevent the error on the next migration

  • Use a newly created destination directory with known ownership instead of reusing a directory populated by another account.
  • Keep the archive and matching installer.php together and verify the transfer completed before launching the installer.
  • Confirm PHP and WordPress versions meet the plugin’s stated requirements before building the package.
  • Ask the host in advance whether PHP execution, archive extraction, ModSecurity, Imunify360, and account quotas affect migration directories.
  • Plan a maintenance window, retain a separate backup, and decide whether the destination is an import into existing WordPress or an intentional overwrite.
  • Delete installer and archive artifacts immediately after the migration and restore all security controls.

The practical answer

Fix the destination path, not the whole server: align ownership with the PHP/web-server process, use 755 for directories and 644 for files, and retry. If the error is a 403 or the installer never executes, investigate .htaccess, security plugins, host WAF rules, and PHP policy instead of changing filesystem modes. When dashboard import is blocked, manually transfer the archive to wp-content/duplicator-backups/imports or run Classic Installation from the destination root. Escalate ownership and firewall changes to the host, then remove every migration artifact when the site is working.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.