You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: projects/csgl-lightsail-wordpress.html
+38-16Lines changed: 38 additions & 16 deletions
Original file line number
Diff line number
Diff line change
@@ -50,7 +50,7 @@
50
50
<h1>WordPress on AWS Lightsail</h1>
51
51
52
52
<p>
53
-
This project documents the migration of a live WordPress business website to AWS Lightsail, including DNS, SSL, static IP configuration, backup design, a real incident, and the redesign of the recovery strategy using automated snapshots.
53
+
This project documents the migration of a live WordPress business website to AWS Lightsail, including DNS, SSL, static IP configuration, backup design, a production incident, and the redesign of the recovery strategy using automated snapshots.
The website runs on an Amazon Lightsail instance in the London region using a Bitnami WordPress stack.
100
100
</p>
101
101
<p>
102
-
Traffic is directed to the site through DNS, with a static IP attached to the instance so the endpoint remains stable. SSL is configured for HTTPS, and the site is backed up using snapshots and S3-based backups for recovery.
102
+
Traffic is directed to the site through DNS, with a static IP attached to the instance so the endpoint remains stable. SSL was configured for HTTPS, and the original recovery model combined Lightsail snapshots with S3-based backups.
103
103
</p>
104
104
<p>
105
105
This architecture was appropriate because it kept the stack simple while still covering the core production requirements: a fixed public endpoint, encrypted traffic, DNS control, and a practical backup strategy.
@@ -125,8 +125,8 @@ <h2>Key Decisions</h2>
125
125
</div>
126
126
127
127
<divclass="decision">
128
-
<p><strong>Implement a layered backup strategy using snapshots and S3</strong></p>
129
-
<pclass="decision-detail"><strong>Why:</strong>Combining Lightsail snapshots with S3 backups provides redundancy and supports recovery from both instance-level and application-level failures.</p>
128
+
<p><strong>Implement an initial layered backup strategy using snapshots and S3</strong></p>
129
+
<pclass="decision-detail"><strong>Why:</strong>The initial design combined Lightsail snapshots with S3 backups to provide redundancy and support recovery from both instance-level and application-level failures.</p>
130
130
<pclass="decision-detail"><strong>Trade-off:</strong> Adds operational overhead and requires ongoing validation to ensure backups are usable.</p>
After AWS announced the retirement of Bitnami-packaged Lightsail blueprints, the site was migrated from the older Bitnami WordPress stack to the official AWS Lightsail WordPress blueprint.
234
+
</p>
235
+
236
+
<p><strong>Migration approach:</strong></p>
237
+
<ul>
238
+
<li>Built a new official Lightsail WordPress instance in eu-west-2</li>
239
+
<li>Migrated the full WordPress site using Duplicator after plugin size limits blocked the initial restore method</li>
240
+
<li>Reattached the existing production static IP to avoid DNS propagation and preserve mail-related DNS behaviour</li>
241
+
<li>Reconfigured HTTPS manually using Certbot after Lightsail SSL validation issues</li>
242
+
<li>Updated the backup Lambda target and verified snapshot automation on the new instance</li>
243
+
</ul>
244
+
245
+
<p>
246
+
The migration preserved the live domain, Google Workspace mail flow, contact forms, analytics, SSL, backups and rollback capability.
247
+
</p>
248
+
249
+
<p>
250
+
The final platform now runs on the official AWS Lightsail WordPress blueprint with a simpler recovery model, working automated snapshots and reduced operational complexity.
Costs are based on real usage over several months in production.
272
+
Costs temporarily increased during migration, restore testing and snapshot redesign work due to additional Lightsail instances and snapshots running in parallel.
248
273
</p>
249
274
250
275
<p>
@@ -256,17 +281,14 @@ <h2>Outcome</h2>
256
281
257
282
<divclass="content-block">
258
283
<p>
259
-
The project successfully moved a live business website onto AWS with HTTPS, DNS and full infrastructure control, reducing hosting cost significantly while maintaining a stable production environment. This case study is part of a broader collection of <ahref="/projects/">AWS architecture projects</a>.
260
-
</p>
261
-
262
-
<p>
263
-
Following a real-world incident, the backup and recovery strategy was redesigned to prioritise fast, reliable restoration using automated snapshots and monitoring.
284
+
The project successfully moved a live business website onto AWS, improved its recovery model after a real production incident, and later migrated the platform away from the deprecated Bitnami blueprint to the official AWS Lightsail WordPress stack.
264
285
</p>
265
286
266
287
<ul>
267
-
<li>The site is live in production on AWS Lightsail.</li>
268
-
<li>Monthly hosting cost was reduced by ~96% compared with the previous managed hosting setup.</li>
269
-
<li>Recovery is now based on automated snapshots with monitoring and alerting in place.</li>
288
+
<li>The site is live in production on the official AWS Lightsail WordPress blueprint.</li>
289
+
<li>HTTPS, redirects, contact forms, analytics and Google Workspace mail flow are working correctly.</li>
290
+
<li>Typical monthly hosting cost was reduced by ~94–96% compared with the previous managed hosting setup.</li>
291
+
<li>Recovery is now based on Lightsail snapshots, automated weekly snapshots and tested rollback workflows.</li>
270
292
<li>The final solution balances simplicity, cost control and operational reliability.</li>
0 commit comments