Series / Hosting Autopsy

Hosting Autopsy

36 things that go wrong in ordinary ways, and the small checks that would have caught them.

All cases here are composites written by the editors, built from patterns that come up constantly. They are not accounts of particular named customers or companies.
Autopsy

The certificate that expired on a Friday evening

An online shop selling hand-made furniture ran for three years on a certificate bought once and renewed by hand each...

Autopsy

The migration that forgot the cron jobs

A small publishing company moved to a new host over a weekend. The work was done carefully: files copied, database...

Autopsy

The www that was not there

A consultancy launched a redesigned site and shared the address on a printed brochure as www.example-consulting.com ....

Autopsy

The plugin update that took down the store

A shop running WooCommerce had automatic updates switched on, which is usually a good default. One afternoon, a...

Autopsy

The backup that could not be restored

A hobbyist forum had a nightly backup running faithfully for over a year. Every morning the control panel showed a...

Autopsy

The contact form that blacklisted the server

A neighbourhood association had a contact form on its website. The form sent messages to the secretary using PHP's...

Autopsy

The redirect loop nobody could see

A developer put a site behind a CDN to speed it up and switched on the CDN's setting for "flexible" encryption, which...

Autopsy

The disk that filled up overnight

A VPS hosted four or five small sites without problems for two years. One morning all of them returned errors, and the...

Autopsy

The sitemap that listed forty thousand junk URLs

A furniture retailer added a filter system to its catalogue: colour, material, price band, size. Each combination...

Autopsy

The PHP upgrade that broke the checkout

A shop owner was told by the host that PHP 7.4 was reaching end of life and would be retired. She clicked the version...

Autopsy

The CDN that served one customer's basket to another

A boutique put its site behind a CDN and turned on the option to cache everything, including HTML. Speed tests jumped....

Autopsy

The robots.txt that told everyone to go away

While building a new site on a test address, the developer ticked the WordPress option that asks search engines not to...

Autopsy

Two nameservers, one provider, one bad afternoon

A small agency was proud of its redundancy: four nameservers listed for its domain, two on each side. What it had not...

Autopsy

The wildcard certificate renewal that broke the mail server

An organisation used one wildcard certificate for its website and also installed the same files on its mail server. The...

Autopsy

The launch-day database that ran out of connections

A local theatre put tickets for its autumn season on sale at noon and announced it on social media a day earlier. At...

Autopsy

The database backup left in the public folder

A freelancer made a quick database export before an update and saved it as backup.sql in the site's public folder...

Autopsy

The auto-reply that answered itself eleven thousand times

A company set up an out-of-office reply on a shared mailbox. Separately, a helpdesk system sent an automatic...

Autopsy

The contact form that mailed an expired domain

A small manufacturer's contact form sent enquiries to an address at a domain the owner had used years ago for a...

Autopsy

The scheduled job that ran twice

When an online business moved from one server to two, to be safe, it copied the whole server image. That image included...

Autopsy

The firewall rule that blocked the payment provider

After a burst of suspicious traffic, a developer added a rule that blocked all requests from addresses outside the...

Autopsy

The sale that started at the wrong hour

A retailer scheduled a flash sale for 9 a.m. The shop software was set to the store's local time. The server's clock...

Autopsy

The CAA record that blocked its own certificate

A security-minded administrator added a CAA record listing the one authority the company had used for years. It was a...

Autopsy

The redesign that lost its old addresses

A consultancy relaunched with new page names and a cleaner structure. The designer was proud that the new addresses...

Autopsy

The plugin that emailed every order to someone who had left

Years earlier, a shop's order notification plugin had been configured to send a copy of every order to the developer...

Autopsy

The image that cost a month's hosting

A photographer on a pay-by-usage cloud plan published a picture that was picked up by a popular forum. People embedded...

Autopsy

The autoscaler that scaled to meet the bots

A startup used auto-scaling so the site would handle spikes. During one weekend a scraper began requesting every page...

Autopsy

The HSTS setting that broke the intranet

After a security review, an administrator enabled HSTS on the company's main domain with the option that includes all...

Autopsy

The IPv6 record pointing at nothing

After moving to a new host, a nonprofit updated the A record and thought no more of it. An old AAAA record stayed in...

Autopsy

The mailbox that filled up and bounced the best client

A consultant used a single mailbox on her hosting plan for several years and never deleted anything. Attachments...

Autopsy

The certificate on one server, but not its twin

A company ran its site behind a load balancer with two identical web servers. When the certificate was renewed, the...

Autopsy

The domain contact who no longer worked there

A company wanted to transfer its domain to a new registrar. The registrar's confirmation email went to the technical...

Autopsy

The twenty-four hour TTL on the day the server died

A site's DNS records had a TTL of 86,400 seconds, a full day, set years ago by a default. One morning the server's disk...

Autopsy

The one-line .htaccess edit that took three sites down

An administrator added a redirect rule to a shared .htaccess file in a parent folder, which three sites inherited. The...

Autopsy

The staging site that emailed real customers

A developer copied a production database to a staging site to test a new order workflow. The copy contained real...

Autopsy

The forced HTTPS that locked out the admin

A site owner installed a plugin that forces HTTPS. He also had a server rule doing the same thing, and his hosting...

Autopsy

The upload folder that exceeded its quota in a night

A school's gallery plugin generated several resized copies of every uploaded photo. After a sports day, teachers...