Linux.com: Unix Web Application Architectures – Part 1: Intro and Basic Approaches

“In this series I discuss various aspects of writing web
applications in Unix. By a web application I mean a piece of
software that is used with an ordinary browser, without client side
Java or other major extensions.
The reader is expected to have
a basic understanding of the building blocks of web applications,
such as HTML, JavaScript, HTTP and CGI. The focus is on problems
that emerge when the application gets big enough, that the most
simple-minded approaches become insufficient. Issues related to
building web sites in general, such as maintaining static HTML
pages, aren’t considered.”

“The reader shouldn’t expect this to be an unbiased or
comprehensive discussion on the subject. Rather, this can be seen
as an essay about the lessons I have learned when writing custom
web applications for fun and for money. Because I use Linux as my
platform, only the technologies available on Linux are considered.
However, everything said should be applicable to other Unix
variants. I mention Apache a lot of times throughout the text as an
example of a HTTP server. This is simply because I use it, many
others use it, and it’s a fine example of a general purpose web
server. I’ll use terms “web server” and “HTTP server” pretty much

“This document might be useful for someone who writes or is
going to write a web application, and wants to get an overview of
many possible approaches.”