For the entire life of the World Wide Web, the backbone that's kept it upright are the tools of Linux.
Linux, Apache, MySQL and PHP collectively known as LAMP — comprise more than two-thirds of the servers, databases,
and scripting languages on the web today.
It's getting more difficult each day to be a web developer without knowledge and at least a rudimentary level of skill with these tools.
What's the attraction to LAMP tools for developers around the world?
In part, it's the open source underpinnings of LAMP tools. They're freely available, easily configured, and very robust.
They're in a constant state of development and improvement, adding features suggested by the user community at large.
They can be easily deployed, fully configured, and maintained with a minimal amount of effort.
In short, the LAMP tool kit allows developers to do what they do best: develop, without spending a disproportionate amount of time
in the administrative details.
All these elements are addressed in the package of LAMP tools provided by Red Hat Enterprise Linux. With commerce and the internal
communication needs of the enterprise in mind, Enterprise Linux helps to assure that configuring and administering a LAMP server
will be as painless a process as is possible.
The tools of LAMP development
The well-defined tools of LAMP web development exist in nearly every Linux distribution. They include:
- Linux
- Apache web server
- MySQL database application
- PHP scripting language
Note that it's not necessary to have all elements of LAMP installed. The LAMP acronym points more to a selection of one the "P" elements
(PHP, Perl, and Python) rather than to a need for the inclusion of all of them. Of course, you'll likely find both Perl and Python
useful tools for other administrative tasks, so they'll probably be installed on your system whether or not your intent is to use them
as an element of LAMP web development. Enterprise Linux provides the most recent version of each of these packages available at the time of
the Enterprise Linux version release.
Apache, PHP, Perl, and Python are provided as defaults in the installation of Enterprise Linux, while MySQL requires selection at the
time of installation.
Linux
Clearly, the most important element of the LAMP combination is the Linux distribution installed on the server. With dozens of distributions
available, the choice can be a bit perplexing. Of the available distributions, however, Enterprise Linux has grabbed the strongest niche
in enterprise-grade LAMP web servers for several reasons.
- Enterprise Linux utilizes the latest stable kernel version.
- The underlying ext3 file system is a well-proven technology for both rapid recovery and protecting the integrity of the data
on the server.
- The Anaconda-based installation is both easy and accurate, detecting and configuring nearly all the available hardware options
for the server.
- The Anaconda hardware detection routines are particularly well-suited to such devices as SCSI drives and RAID arrays, devices
that enhance the overall performance and stability of enterprise-grade servers.
- Enterprise Linux also provides clean and easy-to-use tools for failover clustering and load balancing services — services that
become even more essential in the performance sensitive enterprise environment.
Apache
The second element of LAMP web development is the Apache server, another open source tool with a rich and mature code base.
Created in the early 1990s, the HTTP daemon (httpd) package today operates nearly 65% of the web servers worldwide.
Apache is highly configurable and highly modular.
A completely customized configuration can be achieved simply by modifying the text configuration file, located on the
file system at /etc/httpd/conf/httpd.conf.
This file is commented in depth, providing configuration guidance to both the novice and expert webmaster.
The code base can also be extended by means of modules, chunks of code that can be loaded at the time the server is started or dynamically,
as needed.
Hundreds of these modules — most developed by interested third parties — exist in the official Apache code base today.
Apache is part of the default installation of Enterprise Linux. In short, installing Apache doesn't require the further action of
selecting it as a package during installation. The Apache package is referred to as httpd in the standard Enterprise Linux configuration.
Configuration and related files are named accordingly.
The current version of the Apache software may be downloaded from the
Apache website .
MySQL
The third element of the LAMP tool set is the MySQL database, another robust open source tool that has revolutionized the way webpages,
graphics, tables, and data sets of all sorts are served up on the web. Web-based databases in general, and MySQL in particular,
have made it possible to build and present fully dynamic websites, capable of presenting content in real time.
They've also helped to further the goal of separating content from formatting, speeding the load time of sites while making them far
more manageable than in the past.
Unlike the Apache server, MySQL is not an element of the default installation in Enterprise Linux.
Enterprise Linux does, however, provide the MySQL application in the most recent version as of the time of the Enterprise Linux release.
For those who prefer MySQL over the default PostgresSQL database installation in Enterprise Linux, installing the code is
simply a matter of selecting it from the databases section during the Enterprise Linux installation.
The MySQL software packages can be downloaded from the
MySQL website.
PHP
PHP has, in just a few short years, become one of the predominant scripting languages on the web.
It's another integral element of LAMP development,and can be found everywhere from personal homepages to
content management systems (such as
Drupal) to large-scale corporate intranets.
With a relatively easy syntax and open source licensing, webmasters and developers around the world have migrated to PHP from
the more difficult and syntactically challenging scripting languages like Perl.
PHP 5.0 was released in July 2004.
The newest version fully support object-oriented syntax and provides a command line capability for quick code testing.
PHP is part of the default installation of Enterprise Linux.
However, in order to interact properly with a MySQL database, the php_mysql module must be chosen at install time.
This module provides the interaction between PHP and MySQL in the form of an Apache module.
The current version of the PHP software may be downloaded from the
PHP website.