Apache web server

The educational technology and digital learning wiki
Jump to navigation Jump to search


1 Introduction

“The Apache HTTP Server Project is a collaborative software development effort aimed at creating a robust, commercial-grade, featureful, and freely-available source code implementation of an HTTP (Web) server. The project is jointly managed by a group of volunteers located around the world, using the Internet and the Web to communicate, plan, and develop the server and its related documentation”. (Apache HTTP Server Project, retrieved 08:18, 29 May 2009 (UTC)).

Most educational web applications run on a traditional web server, and most of these use Apache plus the MySQL database server plus a server-side scripting language, PHP in particular. Even non-technical people might consider learning how to install a webserver/MySQL/PHP bundle on a PC in order to try out various software such as learning management systems.

2 Software and installation

Currently (May 2009) there exist three versions:

  • The 2.2.x series. Unless there is a good reason for using an older series (e.g. specific modules that you need), take this one.
  • The 2.0.x series
  • The 1.3.x series
Getting the source

You can compile the server, but generally speaking it is easier to install a binary version (see below)

2.1 Installing compiled http packages

The Apache web server runs on most operating system and on most, it has become really easy to install it.

  • On Linux, it may be preinstalled, else you can get it through a package manager.
  • See the WAMP article for hints on using Apache/MySQL/Php bundles for a Windows PC. You also can download a binary version from apache, but installing "WAMP" package is easier.
  • On Solaris, there are pre-installed versions. However we suggest either compiling it or getting a newer version from Sunfreeware.com.

2.2 Configuration

The webserver is configured by editing hte http.conf configuration file that usually sits the installation_directory/conf/http.conf.

See the Directive Quick Reference

2.3 DSO modules

Apache server has an extension mechanism that allows to add modules without recompiling the server.

“The Apache HTTP Server is a modular program where the administrator can choose the functionality to include in the server by selecting a set of modules. The modules can be statically compiled into the httpd binary when the server is built. Alternatively, modules can be compiled as Dynamic Shared Objects (DSOs) that exist separately from the main httpd binary file. DSO modules may be compiled at the time the server is built, or they may be compiled and added at a later time using the Apache Extension Tool (apxs).” (Dynamic Shared Object (DSO) Support, retrieved 08:40, 29 May 2009 (UTC)).

3 Links

3.1 General

3.2 Manuals

3.3 FAQs and Forums

3.4 Other tutorials/resources