I run several dozen websites, on many different hosts, using various technologies. It’s easy to lose track of them, especially if they don’t get updated for years. And if having to change something in a site, I often forget about the specifics (which scripts may run in the background, if I should better not upgrade some software to a newer version, etc.).
I’m looking for a solution that can help me to stay on top of things. It must be for GNU/Linux (preferably for the desktop, but a self-hosted Web app is okay, too) and it must be licensed under a free/libre license.
Currently I’m using a wiki and a password manager to manage my sites, but I would like to use a more structured solution, ideally one that is made exactly for this purpose.
The following features are not requirements, I’m also interested in solutions that offer only some of them, or similar ones.
Notes/documentation. Let me enter text notes so that I can "understand" the site when coming back to it years later.
Basic to-do list. Keep track of ideas and things I want to fix when I find some time. (Doesn’t have to be a full-fledged issue tracker.)
Structured search or filters. Not just a full-text search over all fields. Example: I want to find all sites that use Drupal, without also finding sites that only mention Drupal in the notes field.
URLs. Record all URLs of a site (maybe optionally via Sitemaps import) and let me add metadata about each URL: which popular backlinks it got, if it’s the target of a redirect, if it should give a special HTTP response (e.g., 410), if it’s no longer active and should redirect to some other URL, if it’s blocked in the robots.txt (it would ideally automatically detect this), etc. Bonus points if this can integrate with a link checker that pings the URLs and reports if a URL gives a different response code than specified.
Backups. Don’t make them automatically, but let me add site backups I made.
Ideally the tool would understand all the different entities involved and offer suitable fields, views, etc.:
domain name (to track my WHOIS data, registrars, expiration dates, etc.):
hoster/server (to track SSH, hosting company/plans, etc.):
host name (to track name servers, ports, certificates, etc.):
site (central entitiy):
CMS (to track version number, patches, list of modules, upgrade log, etc.):
Guestbook script 0.93
backend script (to track purpose, etc.):
URL (to track redirects, backlinks, etc.):
And all of these entities should be related: a domain name points to all of its host names, a host name points to its hoster and its sites, a site points to all involved CMS/scripts and its URLs.
Great if the tool can also help tracking non-HTTP services (SMTP, XMPP, etc.), but that’s not required.