RT Cunningham

RTCMS (Not HHCMS) Revisited - Ready to Share With Anyone Who Cares

RTCMSRTCMS is ready to go. As ready as it will ever be. I will soon be writing all the articles I need to explain it, and they won’t interfere with anything else. It’s trivial to copy the “entry” post type and create something new and unique.

The name I came up with, “HHCMS” for “Headless Horseman Content Management System”, is a bit too flippant, even for me. RTCMS is simpler. It’s my first two initials, “RT”, and “CMS”.

I had the website for it established on July 15 and then pulled it offline on July 19. I needed to fix more things than I can remember. I’m pretty sure I’ve finally fixed everything important. The main thing you need to know is that this CMS is completely headless. All you have to do is upload PHP ini-type files to the posts directory and you’re in business. There is absolutely no user input available and there are no security issues.

Important Changes to RTCMS

I know, I know. I’ve been working on it for years, regardless of what title I give it. If I explained every change I made along the way, you would stop reading. Thankfully, I’m done with it and I only need to mention the recent changes. It’s version 1.0 and I doubt I’ll publish a newer version any time soon. The important changes that led up to this point:

That’s about it.

Two Caching Methods

If you use Nginx as your web server and you really want to use Nginx FastCGI caching, you can. In that case, you’ll want to remove caching references in the “index.php” file.

The first caching method is simple PHP caching. Each post is cached for the number of seconds defined in the “config.php” file. The second method is a script that runs at specified intervals, whatever you define in your cron file. I’m including the script, obviously. You can use either or both caching methods. Since I run the script once an hour, I use the other method for the in-between period when I add a new post (or posts).

Even though PHP 7.3 (which I’m using until PHP 7.4 is released as stable) is really fast, nothing beats the speed of a static file. A cached file is the next best thing to a static file, with the only slowdown being the check for an existing file.

Who is RTCMS Written For?

It can be used by anyone as is, but some people need more control. If you want a simple blogging (or regular CMS) platform, you can’t get any simpler than this. I’ll explain everything, of course, as I write the articles for it and put them in place.

It’s especially tuned to people who know some PHP, some HTML, some CSS and some JavaScript. I tried to remove the expert prerequisite since I’m not an expert. Not even close. If you need a demonstration of it in action, you’re looking at it. I’ll be releasing it as CC0 (public domain).

Image attribution: The original Nginx logo is in the public domain. The original PHP logo is by Colin Viebrock (Download Logos and Icons) [CC BY-SA 4.0 ], via Wikimedia Commons. The combined image is by RT Cunningham, with the same Creative Commons license.


RT Cunningham
October 8, 2019
Web Development