
•
Table of Contents
Open Source Web Development with LAMP: Using Linux, Apache, MySQL, Perl, and PHP
By
James Lee, Brent Ware

Copyright

Foreword

Preface

Is This Book for You?

What It Will Do

Four Parts

Does This Free Software Come with .docs?

The Old Bait and Switch

Companion Web Site

Acknowledgments

About the Authors

Introduction

Section I.1.
The Best of All Possible Worlds...

Section I.2.
Open Source Software

Section I.3.
Summary

Section I.4.
Resources

Part I:
Structural

Chapter 1.
The Web Explained

Section 1.1.
How It Works

Section 1.2.
What We Don''''t Talk About

Section 1.3.
Security

Section 1.4.
Summary

Section 1.5.
Resources

Chapter 2.
LinuxThe Choice of a GNU Generation

Section 2.1.
Introduction

Section 2.2.
Basic Unix

Section 2.3.
Summary

Section 2.4.
Resources

Chapter 3.
Apache Web Server

Section 3.1.
Introduction

Section 3.2.
Starting, Stopping, and Restarting Apache

Section 3.3.
Configuration

Section 3.4.
Securing Apache

Section 3.5.
Create the Web Site

Section 3.6.
Apache Log Files

Section 3.7.
Summary

Section 3.8.
Resources

Chapter 4.
Perl

Section 4.1.
Introduction

Section 4.2.
Perl Documentation

Section 4.3.
Perl Syntax Rules

Section 4.4.
A Quick Introduction To Object-Oriented Programming

Section 4.5.
What We Didn''''t Talk About

Section 4.6.
Summary

Section 4.7.
Resources

Chapter 5.
MySQL

Section 5.1.
Introduction

Section 5.2.
Tutorial

Section 5.3.
Database Independent Interface

Section 5.4.
Table Joins

Section 5.5.
Loading and Dumping a Database

Section 5.6.
Summary

Section 5.7.
Resources

Part II:
Static

Chapter 6.
Website META Language

Section 6.1.
Introduction

Section 6.2.
Installation

Section 6.3.
The Basics

Section 6.4.
Creating a Template

Section 6.5.
Other Helpful Includes

Section 6.6.
Diversion

Section 6.7.
A Better Template

Section 6.8.
Configuring WML with .wmlrc

Section 6.9.
MacrosCreating Custom Tags

Section 6.10.
Programming Codeeperl

Section 6.11.
Project

Section 6.12.
Summary

Part III:
Dynamic

Chapter 7.
The Common Gateway Interface

Section 7.1.
Introduction

Section 7.2.
Apache Configuration

Section 7.3.
A First CGI Program

Section 7.4.
What Can Go Wrong?

Section 7.5.
CGI.pm Introduced

Section 7.6.
CGI.pm HTML Shortcuts

Section 7.7.
Information Received by the CGI Program

Section 7.8.
Form Widget Methods

Section 7.9.
CGI Security Considerations

Section 7.10.
A Note About die()

Section 7.11.
ProjectCGI/MySQL/DBI

Section 7.12.
Summary

Section 7.13.
Resources

Chapter 8.
mod_perl

Section 8.1.
Introduction

Section 8.2.
Configuration

Section 8.3.
Turning CGIs Into mod_perl Programs

Section 8.4.
Pure mod_perl Programming

Section 8.5.
Project: MySQL, DBI, and mod_perl

Section 8.6.
Other Stuff You Can Do

Section 8.7.
Summary

Section 8.8.
Resources

Part IV:
Embedded

Chapter 9.
Server Side Includes

Section 9.1.
Introduction

Section 9.2.
Security Considerations

Section 9.3.
Summary

Section 9.4.
Resources

Chapter 10.
Embperl (HTML::Embperl)

Section 10.1.
Introduction

Section 10.2.
Installing Embperl

Section 10.3.
Apache Configuration

Section 10.4.
A Quick Example

Section 10.5.
Embperl Commands

Section 10.6.
Posted Data and %fdat

Section 10.7.
Other Embperl Variables$row and $col

Section 10.8.
Embperl Project

Section 10.9.
What We Didn''''t Talk About

Section 10.10.
Summary

Section 10.11.
Resources

Chapter 11.
Mason (HTML::Mason)

Section 11.1.
Introduction

Section 11.2.
Installation

Section 11.3.
Apache Configuration

Section 11.4.
A Quick Example

Section 11.5.
Inline Perl Sections

Section 11.6.
Handling Posted Data with %ARGS and <%args>

Section 11.7.
Mason Components

Section 11.8.
Mason Project

Section 11.9.
What We Didn''''t Talk About

Section 11.10.
Summary

Section 11.11.
Resources

Chapter 12.
PHP

Section 12.1.
Introduction

Section 12.2.
Embedding PHP Into HTML

Section 12.3.
Configuration

Section 12.4.
A Couple of Quick Examples

Section 12.5.
Language Syntax

Section 12.6.
Built-In PHP Functions

Section 12.7.
PHP and MySQL

Section 12.8.
Project

Section 12.9.
Summary

Section 12.10.
Resources

Bibliography