Image Upload Error: Error-200, Message: HTTP Error
If you see this error while uploading images or files in WordPress:
Error-200, Message: HTTP Error
this usually means the upload request was interrupted, blocked, or could not finish correctly on the server.
In many cases, this is related to server upload limits, PHP execution time, memory limits, image processing limits, or file permission problems.
Why This Error Happens
When WordPress uploads an image, the server must receive the file, process it, resize it, and generate the required thumbnails.
If the server does not have enough time, memory, upload size, or permission to complete this process, WordPress may show a generic HTTP upload error.
Common causes include:
- PHP execution time is too low.
- PHP memory limit is too low.
- The uploaded file is larger than the server allows.
- The server cannot process large images.
- The uploads folder does not have correct permissions.
- The server has insufficient disk space.
- A security rule, firewall, or hosting restriction blocks the upload.
Recommended Server Values
Please ask your hosting provider to check and increase these PHP values if needed:
upload_max_filesize = 64M
post_max_size = 64M
memory_limit = 256M
max_execution_time = 300
max_input_time = 300
Important: post_max_size should be equal to or higher than upload_max_filesize. If upload_max_filesize is higher but post_max_size is lower, uploads can still fail.
Temporary Fix: Add set_time_limit in wp-config.php
In some cases, increasing the script execution time from wp-config.php may help.
Open the wp-config.php file from your website main directory using FTP, SFTP, or your hosting File Manager.
Find this line:
/* That's all, stop editing! Happy publishing. */
Add this code above that line:
set_time_limit(300);
This asks PHP to allow the script to run for up to 300 seconds.
Important: Some hosting providers do not allow this value to be changed from wp-config.php. If the server blocks or overrides this setting, the code may not have any effect.
Best Solution: Ask Hosting to Increase the Limits
The best solution is to ask your hosting provider to increase the PHP limits directly from the server configuration.
You can send this message to your hosting provider:
Hello,
I receive this WordPress upload error when uploading images:
Error-200, Message: HTTP Error
Please check the server logs and increase the PHP limits for this website if needed:
upload_max_filesize = 64M or higher
post_max_size = 64M or higher
memory_limit = 256M or higher
max_execution_time = 300 or higher
max_input_time = 300 or higher
Please also check if the uploads folder has correct permissions, if there is enough disk space, and if any firewall, ModSecurity rule, or server restriction is blocking the upload.
Thank you.
Check Upload Folder Permissions
If the PHP limits are correct but uploads still fail, ask your hosting provider to check the permissions for:
wp-content/uploads/
WordPress must be able to write files inside this folder.
If the server cannot write files to the uploads folder, image uploads may fail.
Check Disk Space
This error can also appear if the hosting account is out of disk space.
Please check your hosting account storage usage or ask your hosting provider to confirm that there is enough free disk space available.
Check Large Image Processing
If the error happens only with large images, the server may not have enough memory or execution time to process and resize them.
Try uploading a smaller image as a test.
If smaller images upload correctly, but large images fail, the issue is likely related to image size, memory limit, or execution time.
Official PHP References
You can read more about these PHP settings here:
PHP set_time_limit documentation
PHP file upload common pitfalls
Final Recommendation
If you see Error-200, Message: HTTP Error, first ask your hosting provider to check the PHP limits, server logs, upload folder permissions, disk space, and any server security restrictions.
Adding set_time_limit(300); in wp-config.php can be tested as a temporary solution, but the correct fix should usually be done from the hosting/server configuration.