“My website is down!” Those are some of the words you don’t want to utter as a business owner.
One of the most important features of a website as an asset is the fact that it is available and accessible 24 hours a day, 7 days a week.
For a site to not be ‘online’ defeats its entire purpose. A website that isn’t online is like a ship that isn’t in water.
Interestingly though, everyone experiences being offline to varying degrees every now and then, from the smallest hobbyist sites to the largest corporations like Amazon.com.
And depending on the purpose or function of your website, it can have catastrophic consequences, or go completely unnoticed.
The main issue boils down to why your website is down and how long it’s going to take for it to be back up and functioning normally.
(This article is part of our series on the 25 Most Common Website Problems And Their Solutions.)
Here are the various factors to consider if your website is down:
- Device or Internet issues
- A plugin or theme conflict
- A server issue
- DNS resolution
- An unscrupulous website designer
- A spike in popularity
- A DDoS attack
Device or Internet issues
But before you go digging and making changes or tearing your hair out, you first have to confirm if you have an actual problem, or if it’s nothing at all.
Your inability to access your site might not even have anything to do with it being online. It could be caused by local issues like:
- Your computer or phone’s inability to access the Internet
- Your browser having cache or cookie problems
- Your ISP (Internet Service Provider) having issues
- Your particular device experiencing some type of security or IP address block.
In all the cases above, there’s nothing wrong with your website, there’s rather something wrong with your ability to access it.
To check the status of your site, you can start by visiting: isitup.org
Obviously if you can’t access that or any other site, you probably need to check your Internet or device settings to ensure you’re online.
Once there, entering your domain name and searching will check if your site is up, independent of some of the factors affecting you, or whether it’s actually down.
Is your site is up? Great! Now you only have to figure out your local issue.
If you can’t access your site in your browser normally, try accessing it in private browsing or incognito mode. This state won’t have cookies or caching to interfere.
If your Internet Service Provider is the problem, you’d be able to confirm that by trying to access your site on a different network. You can switch to your cellular network if it’s a different provider from your wifi to check whether your main network is the problem or not.
Another thing to test is accessing your website on a different device. That eliminates the possibility of an issue with whichever computer or phone you normally use. (If it’s a device issue, a restart can sometimes help).
On the other hand, if your site is still not accessible, you have to keep reading.
My website is down due to a plugin or theme conflict
Alright, it’s established that your website is actually down. Time for you to troubleshoot and find out why that is.
One of the common reasons why your site might be inaccessible is if you have recently installed a new plugin or theme. There are so many different components to the modern site (especially those created in WordPress), and each of these has to work together.
Sadly, that isn’t always the case and when two components aren’t working well together, they might end up taking you offline with a 500 internal server error message.
Previously, you would have probably just seen a blank screen (the white screen of death) but today, you might see the message “The site is experiencing technical difficulties.” You might also rather see a bunch of incoherent code on the screen rather.
That’s a clear indicator that a plugin, theme or a recent update could be causing a conflict. Such conflicts can happen in multiple ways though:
- The plugin might not be compatible with your PHP version or hosting environment
- Another plugin might be performing the same function as the new one you installed, hence the conflict
- Your server may have run out of sufficient memory or diskspace
and so on.
If you suspect it was a plugin or theme you just installed, you can try deactivating it.
Sometimes, you might not even be able to access your site’s backend. In that case, you need to log into your web hosting (whether via FTP or cPanel, etc) and rename the plugin or theme you’re suspecting.
Once you do so and are able to log back into the backend, you’ll notice that that plugin has been deactivated.
If you have no idea what the problem is, then you have to start looking through server logs and/or switch on debugging in order for your website to tell you exactly what it’s suffering with.
Whilst a debug log can look like a lot of incoherent words, your developer should be able to decipher that and move in the right direction of getting your site back online.
The customer service team for your hosting company might be nice enough to take a look at that for you. This is more likely if you’re on a managed hosting package or dedicated server, rather than on a shared server.
If a recent WordPress update is the culprit for taking your site down, you may need to ensure that you have updated all your themes and plugins so they’re compatible with the new WordPress version.
Assuming that isn’t possible, you run the risk of having to downgrade your WordPress version until you can work out the plugin conflict arising.
A server issue
Whilst your site being down can sometimes be narrow and specific to just you, sometimes it’s a much larger issue.
There have been many incidents where a hosting provider encounters an issue that just causes a whole server or series of servers to not load. They might push out an update to some of their software which will cause an issue, or they themselves might be suffering from a hack or virus, etc.
Whilst issues affecting your entire server are rare, they do happen and are usually resolved as quickly as possible by your hosting provider. It hurts their uptime guarantee when they can’t keep your website up.
On rare occasions, the issue could be catastrophically huge. Just this year, a reputable hosting company, A2 Hosting experienced a very severe outage on a number of their servers.
It was caused by malicious ransomware that encrypted their servers. That’s like being locked out of your own house and having to pay to get the key back.
Sadly, those servers were taken out for weeks and some accounts never fully recovered.
There are only 2 solutions you have to keep in mind to help solve or rather avoid a server issue.
Firstly, sign up with the best website design or hosting company that you can. Whilst that doesn’t guarantee you won’t experience a little downtime, you will be able to rest assured that if anything does happen, they are going to be working with everything they’ve got to get you back online as quickly as possible.
Going with the most credible company you can find instead of the cheapest will possibly end up increasing the cost of your website package and/or maintenance, but having much fewer headaches is well worth it.
Secondly, always take your own backups and store them anywhere else but on your server or hosting account.
This was a painful lesson the affected users of A2 Hosting had to learn the hard way. Many had relied on the fact that A2 Hosting provided backups but when their servers were compromised, their backups were compromised as well.
People lost decades of work all because they didn’t have their own backups stored elsewhere. If they did, they could have easily just moved to a different hosting company and gotten their sites back up within 24 hours or less.
Your site could be inaccessible to you because there might have been a recent update to your domain name records, like your nameservers or an A record, etc.
If you recently transferred your domain name or hired a designer who is working on your site, a change to any of those settings could cause your site to be temporarily inaccessible.
This is because domain names are set to point to a particular location called an IP Address. At that address, they will find the server that is hosting your website.
If you recently had an upgrade for example, or transferred to a new server, the IP Address your domain points to must be updated before you’ll see your new site up and live.
But this requires something called DNS (Domain Name Server) Resolution. That’s the period of time it takes for thousands of ISPs to update their records with the new address for your domain name.
It’s like if you were to change your phone number. A lot of people won’t get through to you because they’d still be calling the old number, until they finally get your new number.
Blessedly, DNS resolution usually takes only a few hours, although it can officially take up to 72.
One thing that does happen though is that locally, your computer or phone actually stores a whole table of IP addresses in something called a DNS Cache for websites you’ve visited. This enables it quickly get to the site you want without having to now find out exactly where it should go looking.
But that can present a problem. Whilst everyone in the world might be accessing your new site, your browser might still be going to the old one. Whilst this can clear up also in a few hours, you can speed up that process by flushing your DNS Cache if you know that DNS resolution has been given sufficient time to complete.
You can find more information on flushing your DNS Cache if that is the problem you’re encountering.
You would simply enter your domain name, hit enter and it’ll tell you which IP address people are being sent to in order to access your website in different parts of the world.
Whilst there are about 20 different ISPs being used to check via whatsmydns.net, it is very possible that your ISP hasn’t yet finished updating its DNS servers, so it can be useful to wait a bit longer if you aren’t yet seeing your website.
An unscrupulous website designer
The saying goes:
“Hell hath no fury like a woman scorned!”
Perhaps an unscrupulous website designer might be a distant second.
For whatever intent at all, the person or firm in charge of your site might get up one morning and decide, “I think I’ll put off this guy’s website today!”
This is very malicious conduct which we wish didn’t exist, but we do hear of.
Why would anyone want to take down someone’s site? Well, because they’re unscrupulous! They don’t play by the rules.
- It might be an attempt to extort more money from you, blaming the outage on something else entirely.
- It might be a form of blackmail for whatever reason.
- They may feel scorned and want to exact revenge, etc.
The solution is to avoid an unscrupulous web designer and deal with someone you trust and have heard great things about.
We’ve written an article here on some of the best website design and development companies in Ghana which might be useful to you in making your decision if we aren’t a good fit for your project.
But an alternative to that is to ensure that you and only you have the ability to give access to your site when you choose. In order to do that, you need to ensure the following:
- That you have the only access details to your hosting platform, control panel or cPanel.
- That you have the only access details to your server via FTP (if that applies)
- That you have the only or highest administrator details to your website
- That you have the only access details to your domain name’s management console.
Missing a single of these opens the door to trouble from a designer who has a bone to pick with you.
Try and avoid financial misunderstandings as much as you possibly can. As long as you and your designer are on the same page regarding payments, this can be avoided.
Both you and your designer should be in agreement over how much is to be paid, when that amount is to be paid and what amount of work is to be done to merit that payment.
And as long as both parties stick to that agreement, that should be one less motive for this particular situation to happen.
A spike in popularity
If your website suddenly becomes popular, for example you get featured on CNN or Forbes or a celebrity tweets or puts out a message with your link in it, the sheer volume of new visitors can take down your site.
Whilst this is a good thing, it’s also a bad one.
It’s great because yipeeee, you’re getting so much publicity, visitors and potential customers.
The bad news is that they are getting a heck of a bad experience not being able to get through to your website to find out who you are and what you’re all about.
The problem has to do with you receiving more traffic than your server is set up to handle. If your site can handle 10 visitors per minute, but you’re getting 1,000 per minute, no one is going to be able to have your site even load up. (This actually has a malicious application as you’ll read in our point on DDoS attacks).
Whilst you’ll require your web designer to take a look at what can be done, it may require any of the following:
Enable website caching
For most people around the world, it’s highly likely that your site is created or powered by WordPress. It’s a terrific platform that works based on 3 main technologies: HTML, PHP and MySQL.
Whenever someone visits your site, the server has to do some thinking or processing. It has to access some information from the database (MySQL) and then combine that with information in PHP and then it outputs a page in HTML. This is the page you see when you visit a website.
The problem is that all that thinking being done by the server is what slows down and ultimately crashes your site if you’ve gotten many visitors at the same time.
One of the solutions is to lessen the amount of thinking your server has to do. When someone visits your site, your server does the work, outputs the HTML page, but with caching enabled, it stores a copy of that page.
So the next time someone else visits looking for that same page, your server doesn’t have to think. It just looks for the copy of the page it sent out earlier and sends it to this next visitor and just like that, a perfect outcome without the stress.
A well implemented caching system can immediately take your website from struggling under the weight of 10 visitors, to not breaking a sweat with 1000.
If you’re using WordPress, there are a lot of great cache plugins out there. They all have their pros and cons, you just need to ensure it’s well configured for your environment.
A few to consider are:
- Total Cache
- WP Rocket
- Fastest Cache
- Zend Cache
- Lightspeed cache
and a whole lot more.
Upgrading your hosting
You might also have to rather consider upgrading your hosting package. Whilst it’s fun to have a hosting package that says unlimited storage, unlimited bandwidth, unlimited everything, that just doesn’t help if the server you’re on is under pressure or vastly under powered.
That’s like being told to drive the fastest car in the world on a road that has a 10km/h speed limit.
One of the benefits of more expensive hosting packages is the fact that they have more power; processing power that is. They also do not lump you together with a thousand other users on the same server, which can be a tragedy.
Your site might be perfect, you aren’t going over any limits, but some other site on your server you don’t even know exists is getting all this HUGE TRAFFIC and it’s causing your site, and everyone else’s to suffer.
On higher hosting packages, you are with far fewer people, sometimes, you’re even on your own with the whole server to yourself, and that gives you massive processing power.
Even without changing a single thing, a higher powered hosting account can help your site stay online whereas it might have gone down on a lower powered hosting package.
Oh, and having a higher powered hosting package opens up more options and possibilities, as mentioned in our next point.
Enable Server-side caching
Sometimes, a basic cache for your website whilst useful, isn’t enough. When that happens, you have to go up a level and add server-side caching.
With server-side caching, visitors don’t even hit your website. It’s like having a shield around it.
Before a visitor even gets to your site, he’s happily catered for by the shield, which in this case is your server-side cache. This protects your server from having to work.
Note, you will most likely only have access to server-side caching if you are on a more powerful hosting package, like a VPS (Virtual Private Server), Dedicated Server or a Managed or Cloud Hosting Package.
Alternatively, you can ask that your web design company has your site humming along on a really powerful setup that includes server-side caching.
You would consider implementing caches like:
- Varnish, etc
They all have their benefits and can help your site scale a few hundred times, ready for the next big surge of popularity that you might experience.
Making use of a Content Distribution Network (CDN)
A CDN is a system whereby the information on your website is served from multiple servers instead of just yours. This can significantly take the load off your server.
It’s like a waitress in a very busy restaurant. If she has to serve 50 people in 10 mins, that’s a lot of pressure. But if she has 4 other waitresses to help her, she now does 80% less work.
When you have a CDN, instead of your server serving up 100% of all the content, it rather serves up maybe some 10 or 15% because all these other servers in the CDN will be serving the other 85 to 90% of the content.
This has multiple benefits including reducing your bandwidth usage, reducing your server processing power and also speeding up your website and its delivery.
A few Content Distribution Networks to consider include:
- Stackpath (formerly MaxCDN)
- Amazon Cloudfront
- Key CDN
A DDoS attack
A DDoS (Distributed Denial of Service) attack is very similar to your site becoming popular overnight. The only difference is that it has become popular with robots, which is like a thousand times what is normal.
People do not always understand why hackers do what they do. Some say:
“Why does a hacker want to attack me, I don’t have any money!”
Well, it’s not always money they’re after. Sometimes, they want control!
A site that has been hacked can be controlled, and it can do as the hacker pleases.
In a DDoS attack, phones, computers, servers, routers and every device that they can get their hands on, work together to send a huge deluge of requests to a victim.
When that happens, the center cannot hold and everything falls apart.
The problem with a DDoS attack though is that it is designed to ensure that your server will be completely and absolutely overwhlemed.
That’s why it’s so important to prepare and improve your website security before you encounter any hacking issues because with a DDOS attack, you won’t even be able to access your website or hosting panel to make any changes or mitigate the attack.
Maybe you have an important message you are getting out to the world that they do not want you to hear.
Or maybe you were just collateral damage for an attack on someone else on the server you’re on.
Either way, recovering from a DDoS isn’t exactly easy. That is because of the first D in DDoS – Distributed.
What that refers to is the fact that the attack doesn’t have a single origin. If all the traffic was originating from Turkey or Iran, you could just block every IP address from there and you’d be done.
Oh no! In a DDoS, you’re probably going to have multiple IPs from every country in the world hitting your servers. And in blocking some, how do you know you aren’t blocking legitimate traffic?
There are DDoS protection services and some high level hosting providers do provide this as well.
They do so by screening the traffic coming to your server and filtering out bots from real human beings. If you’re a human being, you get through. But if you’re a robot, no passage for you.
We hope that helps in getting your website back up and online. If you have any questions or issues, feel free to contact us, or leave a message in the comments below.