Here’s a foolproof method to fix the dreaded HTTP error seen when attempting to upload images, videos, or other accepted file types to the WordPress Media Library.
One of the most frustrating aspects of using the popular WordPress platform is running into this error when attempting to upload media. If you’ve never experienced this, you’re lucky! I run into this problem on ~1% of my image uploads and have wasted a lot of time and energy trying to resolve it.
I’m not alone. The two million plus hits returned by a quick Google search for the cause of this problem make it abundantly clear that this problem is common, and that there is neither a simple explanation why it occurs nor a single solution that prevents it from happening. Here is a summary of some of the “solutions” that have been proposed:
Reduce image size
Increase PHP memory
Change php.ini and /or .htaccess settings
Install a newer version of php
Disable image optimization
Change upload folder permissions
I’m not denying that these approaches work under some circumstances, and if you are consistently unable to successfully upload images to the WordPress media library you should probably investigate them. But be prepared for a lot of messing about with no guarantee of success. (At least, that was my experience.)
So, here’s a solution that works (note: except for websites hosted at wordpress.com, because plugins cannot be added to such sites).
How to avoid an HTTP error when uploading media to WordPress Begin with these three one-time-only steps:
From your WordPress Dashboard, check Settings > Add From Server. The default settings [User Access ControlAll users with the ability to upload files] & [Root DirectoryDo not lock browsing to a specific directory] should be fine for general use.
Once you’ve completed the above steps, you can upload media to your WordPress library as follows:
Run your FTP program and navigate to the appropriate folder to upload your media. There are a couple of possibilities here. For a default WordPress installation, the appropriate folder will be your Uploads folder, i.e. (..[NameOfYourSite]/wp-content/Uploads/).
If, however, you have the WordPress Dashboard Settings > Media option Organize my uploads into month- and year-based folders checked, you will probably want to upload your media into a subfolder of Uploads that has the form [CurrentFourDigitYear/CurrentTwoDigitMonth/], for example ..[NameOfYourSite]/wp-content/Uploads/2017/07/. Note that if this is your first upload for the current month, the folder won’t exist and you’ll need to create it using the FTP program.
From your WordPress Dashboard, go to Media >Add From Server.
Use the navigation links at the top of the Add From Server screen to navigate to the same folder you chose in step 1 or 2.
Click the checkmark box (or boxes) next to the media you wish to add. Then scroll to the bottom of the page. There’s an option to set the imported date to the current date and time [default] or the file’s creation date and time. I think the default is most appropriate, but feel free to choose the alternative. Click the Import button and voila! Your selection(s) will be added to your WordPress Media Library!
That’s it! Although this description of the process is long, once you’ve set up your FTP program the five steps above take very little time to complete. I hope this has been helpful, and welcome your comments below!
These days when considering a web presence for your small business, it’s hard to not be impressed with the flexibility and power available from a self-hosted WordPress site. Although WordPress’ roots are in the blog creation world, it’s pretty easy to build a WordPress site where the blog is just another tab in the menu hierarchy. (Example? This site!) And with over 17,000 plugins available that can extend the functionality of your website, you’ll almost certainly be able to add just the special features you want. Perhaps the biggest problem is that there are so many plugins that you could use, and, for performance reasons, you don’t want to have more of them activated than you need.
I’m not the first, and I won’t be the last person to write a post like this, but I hope you’ll find some gems in the following list. Here, in alphabetical order, are my favorite 14 WordPress plugins.
Akismet (free for personal use, $5/month for small business sites) “Spam, spam, spam, spam, spam” sang the merry men of Monty Python’s Flying Circus (As a schoolboy, I watched the original episode with this song.) I knew that my blog posts were finally gaining traction when the volume of spam comments started to soar. Akismet uses the combined submissions of its users to automatically flag comment and trackback spam. On my site to date it has successfully rejected over 12,000 spam messages and only missed 40.
You can see the comments that Akismet flags as spam on an informative screen and quickly delete them, or—rarely needed—reclassify them.
If your blog is getting any kind of decent amount of traffic (this site has had a million page views in the last seven months) you need Akismet. It will save you significant time dealing with the spam comments and backlinks that will otherwise plague your posts.
BackupBuddy ($75 for two licenses + 1 year of updates. Discounts often available.) You backup your computer files regularly, right? (If you haven’t yet learned that computers die and data disappears, you will, and it won’t be pleasant.) Imagine your pain if your painstakingly created website became corrupted or vanished one day, a victim of a glitch, a crashed host server, or an evil hacker.
I used to use my hosting company’s free backup service to make complete backups of my website, but they only let me do this once every 30 days! Not frequent enough, and I needed to run through multiple steps to get everything. Although I am still using the same hosting company if I ever decided to move I would have no idea how to transfer my backed up files onto a new service.
Enter BackupBuddy. This is an expensive plugin but for my peace of mind it’s worth it. Backups are one-click operations from your WordPress Dashboard, or you can schedule them to occur automatically. You can backup just your WordPress database or the entire site (including that massive media library you’ve uploaded). The plugin has the capability to painlessly recreate your site on another host, aka site migration, and comes with two licenses to let you do this.
Bad things happen to good websites and backup is essential. Whether you use BackupBuddy or another solution, backup your website regularly!
Broken Link Checker (free) As I write this I have 1,501 outbound links scattered around the posts and pages of this website, and 2 of them are broken. How do I know this? Why, thanks to the invaluable Broken Link Checker, of course! Links are always going dark on the web, and some of them could be on your website. This fantastic plugin periodically checks that every link on your website still points to a valid page. Those that break can be easily reviewed and updated, or if they have disappeared for good, unlinked. I don’t know why anyone wouldn’t want to install this plugin to keep a site reliable and broken-link free.
BulletProof Security (free) Let me start by emphasizing that you need to keep your WordPress installation up to date. I learned this the hard way last year, when I started seeing ads for cheap drugs that appeared to be linked to pages on my website appearing in Google searches. I was still running an older vulnerable version of WordPress, and the subsequent cleaning of my site took a large amount of time. Trust me, you do not want this to happen to you. Despite being an IT consultant for 25 years, I am so glad these days I do not have to understand and protect against all the nefarious ways that hackers can subvert WordPress websites. That’s BulletProof Security’s job. The plugin guards your crucial WordPress configuration files against attack.
A warning is in order though; I don’t find this plugin particularly easy to set up. It conflicted with my webhost’s statistics reports and figuring out how to make them available again required some configuration changes that I had to get from the author of the program (who responded quickly and accurately I might add). There are many other security conflicts like this that you might run into, and they are documented at exhaustive length in the associated support forums. In addition, plugin updates can lose these custom changes unless you install them just so.
Nevertheless, this plugin supplies peace of mind, albeit in a complex package. This is one plugin you may want someone with technical expertise to install and maintain for you.
Conditional CAPTCHA for WordPress (free) This neat little plugin piggybacks onto Akismet to further reduce comment spam. If Akismet identifies a comment as spam, Conditional CAPTCHA will ask the commenter to complete a simple CAPTCHA. If they fail, then the comment will be automatically discarded or trashed, while if they pass, it will be allowed into the spam queue (or approved, if you so choose). Comments not flagged as spam by Akismet will appear on your site as usual.
I have seen a dramatic decrease in spam displayed in Akismet since adding this plugin. Recommended!
Contact Form 7 (uses Really Simple CAPTCHA, free) Everyone needs a few user fillable forms on their website for one thing or another. There are several plugins that supply this functionality; Contact Form 7 is the one I use. Although it’s optional I strongly recommend you turn on the CAPTCHA option supplied by the free Really Simple CAPTCHA plugin to prevent bots from submitting spammy forms. This plugin has been 100% reliable and is easy to set up.
Disqus Comment System (free) I used the default WordPress comment system for a long time but switched to Disqus about a year ago. (In case you were wondering, it has the capability to import all your existing WordPress comments.) Disqus has more features than the WordPress comment system and I have found it to be reliable. It’s also prettier. One great feature of Disqus is that it is available on many blogging platforms, allowing you to see your own comments across multiple sites.
Events (free) I maintain an event list on my website that contains information about upcoming peer conferences I’ve been told about and conferences I’m facilitating or at which I’m presenting. The Events plugin allows you to display this list in a sidebar and/or on a page, and includes the capability to display separate lists of historic or future events. The plugin has fields for the all the usual information you’d want to share about an event and is highly customizable. This plugin does exactly what I want.
Quotes Collection (free) You’d probably like to display a collection of testimonials from happy customers about your wonderful products and services wouldn’t you? The Quotes Collection plugin does just that via a simple interface. You can choose whether the quotes include an author and/or a source, how and when they get refreshed, etc. I display a random testimonial in my sidebar; I now have quite a collection! Don’t miss this easy way to add a little interest and customer-supplied positive sales message to an appropriate place on your website.
Tweet Old Post (free) Currently I have 180+ blog posts on my website. Some of them, cough cough, are quite good and still relevant, even if they were written a couple of years ago. How can I expose these old-but-good posts to an internet world that thrives on the new?
Using Tweet Old Post, that’s how.
Although I’m not a fan of excessive automated tweeting, I use Tweet Old Post to tweet two to three randomly chosen old posts every day. As the author explains: “This plugin helps you to keeps your old posts alive by tweeting about them and driving more traffic to them from twitter. It also helps you to promote your content. You can set time and no of tweets to post to drive more traffic.” I’ll add that you can exclude posts individually (e.g. if they refer to out of date information or one time events) and/or by WordPress Category, and you can supply the hashtags to be added to each tweet. The plugin only supports a single twitter account, so if you have more than one you’ll need to decide which account to use.
Since I started using Tweet Old Post, I’ve seen a measurable increase in visitors to my blog. Use it once you’ve built up a respectable volume of posts—but don’t overdo it!
WordPress File Monitor (free) After my frustrating experience with my website being hacked (see the BulletProof plugin above) I decided to implement a belt-and-suspenders strategy to site security. So, besides BulletProof I also run this plugin, which simply supplies a warning message when any files in my WordPress directories are added, deleted, or changed. This means that I get warnings when I upload media for posts or install new versions of plugins, which is a little distracting, but I like the knowledge that if something slips past Bulletproof this plugin should catch the attempt to install new stuff on my server. File Monitor can be set to skip user-chosen directories so that backups, captchas, caching, site maps, and other routine processes won’t constantly trigger it.
I sleep a little better each night with this plugin installed.
WordPress Popular Posts (free) As you might expect from the name, Popular Posts is a sidebar widget that displays your most popular blog posts. A wide range of options allows you to customize how the posts appear, and the plugin adds a Dashboard panel that shows blog post statistics. Nice! This is a great way to showcase what visitors like on your blog and lure them in to exploring your content further.
WP-Optimize (free) Every blog post you write and every revision you save while writing it is stored in WordPress’s SQL database. Over time this database gets bloated with old post revisions, deleted drafts, spam comments—all kinds of what technical folks call cruft. WP-Optimize allows you to easily slim down your WordPress database back to the core content. This can improve the responsiveness of your website and make it a little quicker to backup. A few clicks to a svelter site, and a satisfying display of the space freed up. What’s not to like?
WP Super Cache (free) OK, I admit it, I’m a bit of a cheapskate. The Conferences That Work website uses inexpensive shared hosting, where multiple websites are crammed onto a single server. As a result, my site used to often take over a second to return a webpage from a click (use a free service like monitor.us to monitor the responsiveness of your site—the results may surprise you). Earlier this year, hosting provider issues that I won’t go into here led me to investigate caching my website using the WP Super Cache plugin. The results were drastic—my average response time is now 1/5 of a second, a very significant and welcome improvement.
Setting up WP Super Cache appears a first sight to be a bit overwhelming, though the process is easier than the installation instructions imply as the plugin includes a number of checks that everything is configured correctly and will tell you what to do if it isn’t. Enough people (over three million downloads!) use this plugin to reassure me that it’s solid, and I can’t argue with the 5x speedup in site performance. Recommended!
Final thoughts Most of these plugins are donationware. Send the author some money if they make your life easier.
Check that any plugin you install is compatible with the version of WordPress you’re running. Check compatibility before you upgrade WordPress too!
I don’t claim that this list is definitive—in fact I won’t be surprised to learn of better choices for the functions these plugins supply. That’s one of the best reasons for writing posts like these; I’ll learn new stuff! But I hope this list of my 14 favorite WordPress plugins is useful to you too. Let me know in the comments!