Blog (build log)

The KNJ Network Blog

Notes from building KNJ Panel, in the order it actually happened.

blog /blɒɡ/ noun — 1. A web log. 2. Here: a build log. What we built, what broke, and what we learned.

269
Phases written
21 Oct 2026
Latest entry
Every phase
Published as it happens
Phase 169

August 30, 2026 · 1 min read

The Upload That Vanished

During a large cPanel migration test, the upload finished and the page then came back blank, with no error and no new account. What happened The new upload…

Read more →
Phase 167

August 30, 2026 · 1 min read

The Save That Ate Its Own Response

Saving PHP Settings in WHM wrote the configuration correctly but returned a 502 to the browser, and the page then showed stale values. Cause The save reloaded PHP-FPM…

Read more →
Phase 166

August 30, 2026 · 1 min read

The 4GB Limit That Was Never Real

A migration test with a large cPanel backup failed partway through the upload, even though the feature advertises a 4GB limit. The cause The panel’s own web service…

Read more →
Phase 164

August 30, 2026 · 1 min read

The Account That Wouldn’t Leave

During readiness testing, we created a disposable account with one mailbox, confirmed DNS sync and mail delivery, then deleted it and checked that nothing was left behind. DNS…

Read more →
Phase 163

August 30, 2026 · 1 min read

A Report Nobody Has to Remember to Check

Subscribers had real-time stats, but nothing pushed activity to the owner. Feedback asked for a daily email, sent to a chosen address at a chosen time, summarising a…

Read more →
Phase 161

August 30, 2026 · 1 min read

The Address Bar Problem

Visiting a customer domain’s /webmail redirected the browser to the panel’s own hostname. A white-label host should keep the customer’s own domain in the address bar. From redirect…

Read more →
Phase 160

August 30, 2026 · 1 min read

Three Things the Real Servers Wanted

Feedback from running a multi-server stack led to three changes shipped together. phpMyAdmin: installed everywhere except where it mattered phpMyAdmin worked on the development server but was missing…

Read more →
← Newer
Older →