I know most people could give a rat’s ass about what is behind the web pages they visit; but I thought I’d go ahead and post some info on what runs a web server in my house (This site is served from an old, circa 2006 HP desktop computer in my basement utility room, at my home in East Layton, Utah).
The first post I wrote; once I got the server back online, was explaining a little about the operating system I ended up using. Debian GNU/Linux is the true name of the operating system since Linux is the kernel inside the operating system; everything is built on the kernel (Even in Windows and Apple).
With out the goodies that ride on the little kernel, you would end up with a pretty useless piece of computer hardware. On top of the kernel, you need utilities to handle the data between the processor, bus, video, audio, input etc.. In other words, there is a lot to an operating system. What I’m going to show; are the pieces of software I’ve chosen to use on my personal web server for your viewing pleasure.
First, and probably the biggest player on the entire world wide web as you know it is, Apache. It is the software that handles the web server behind the pages, and where I go to tell it what site to show from what directory when a URL is received.
Most of the sites you visit are written in a plethora of code (HTML, XML, AJAX, PHP, XHTML and many more) but one of the most versatile is PHP. Almost universal as a scripting language for web servers, PHP is prominent all over the web. MySQL and PHP play very well together keeping the databases up to date, synced and quickly delivering the links you click.
MySQL is a database application that has undergone many changes over the last few years. I’ve tried to move on to another more open-source related database application but MySQL is what I know (Damn, I sound like a Windows user now). I have also tried to run a database on a separate machine (more to teach me how to do it than anything) but it was hard to keep up with and seemed to slow things down a little bit.
Another application I keep going back to but don’t use a lot is ProFTPd. It is an FTP application that allows the upload/download and edit of files over any network (size isn’t a concern with FTP like it is with HTTP or e-Mail). I’ve always had a hard time getting FTP setup correctly so I mainly use it when I update WordPress or the plugins it uses.
For this server, I’ve been sticking with WordPress. It isn’t nearly as powerful as Drupal or Joomla, but it is much easier to use, seems to handle “most” of my needs, and has been as stable as my hardware (I’ve had a lot of hardware issues). I’ve tried my best to get to know Drupal and Joomla (Really wanted to because they are a true content management system).
A few things I rely on that you will not see from your end are Munin, ClamAV, Motion (sometimes), OpenSSH, Screen, Aptitude, and Conky (Like Munin; but different). I’m still a fan of Gentoo Linux, Ubuntu Server/Desktop and Arch Linux but at this time my server is going to be running Debian until another piece of hardware fails (I use old hand-me-down hardware).
Thank you for your time,