Mattifesto Web Server And Web Site Domain Name Strategy

Notes

In my situation almost every web server runs multiple sites. As websites get larger, that reverses to where each website might have multiple web servers. This document is written from the first perspective which is where most of us are.

Web Server Domain Names

My web servers all have names like:

webserver<number>.mattifesto.com

I started at 1 and keep incrementing the number. No names are ever used twice and whether the server is private or public does not change the method.

So I had webserver1 which was a public test server, webserver2 which is a public production server, webserver3 which is a private test server, and webserver4 which is a private development server.

When a new version of Ubuntu is released we create entirely new web servers so the numbers will keep incrementing. Old servers will be retired and their domain names will never be used again.

Web server domain names, both public and private, should have public DNS A records that point to the IPv4 address of the web server.

Your hosting service will provide you with the IPv4 address for any public server.

For private servers you should reserve an IP address on your router for the specific MAC address given to the virtual machine that is the web server.

Private And Test Website Domain Names

For private development, private test, and public test websites the domain name for a website should be something like:

yaycomputer.webserver<number>.mattifesto.com

A domain like this should have a public CNAME record that points to:

webserver<number>.mattifesto.com

Public Website Domain Names

For public websites the domain name should be whatever you want. Usually something like:

yaycomputer.com

A domain like this should have a public CNAME record that points to its public production web server's domain.

webserver<number>.mattifesto.com

History

Before Colby was open source I would host all my websites on DreamHost. After it was open source I knew I had to have a non-vendor reliant method of hosting websites that everyone could use and modify to their own preferred services.

I was also developing websites using the Apache web server running on the Mac. This worked for me for many years but a number of factors make that also not a great idea anymore.

The current methods have all environments running on the same web server software. That's a good thing that allows us to simplify that process as much as possible and provide you with a chance to gain mastery over a skill that will serve you throughout your current and future endeavors.

This document is a living document representing my current strategies and recommendations.