Books & Videos

Table of Contents

  1. Chapter 1 Installation

    1. Installing installation from Red Hat Linux packages packages Red Hat Linux, installation from Red Hat Linux, packages, installation from from Red Hat Linux’s Packages

    2. Debian, packages, installation from installation from Debian packages packages Debian, installation from Installing from Debian Packages

    3. Windows installation on Installing Apache installation on Windows on Windows

    4. Subversion downloading sources sources downloading Downloading the Apache downloads sources Sources

    5. Apache building from sources building Apache from sources sources building Apache from Building Apache from the Sources

    6. ApacheToolbox, installation with Installing with downloads ApacheToolbox installation ApacheToolbox and ApacheToolbox

    7. Apache starting starting Apache Starting, Apache stopping stopping Apache Stopping, and Apache restarting restarting Apache Restarting Apache

    8. Apache uninstalling uninstalling Apache Uninstalling Apache

    9. Which Apache versions Version of Apache to Use

    10. upgrades, config.nice and Upgrading Using config.nice config.nice

    11. boot, starting Apache at Starting Apache Apache starting at boot starting Apache at boot at Boot

    12. Useful configure script, options configure Options

    13. Finding Apache’s files location Files

  2. Chapter 2 Adding Common Modules

    1. Installing a Generic installation modules, third-party modules third-party third-party modules Third-Party Module

    2. Installing Unix mod_dav mod_dav on a installation mod_dav Unix mod_dav Unix Unixish System

    3. Installing Windows mod_dav mod_dav on installation mod_dav Windows mod_dav Windows Windows

    4. Installing installation mod_perl, Unix Unix mod_perl mod_perl on a mod_perl Unix Unixish System

    5. Installing Unix mod_php mod_php on a installation mod_php Unix mod_php Unix Unixish System

    6. Installing Windows mod_php mod_php on installation mod_php Windows mod_php Windows Windows

    7. Installing installation mod_ssl mod_ssl SSL (Secure Socket Layers) mod_ssl mod_ssl

    8. Finding Modules Using modules locating,

    9. Installing installation mod_security mod_security

    10. Why Won’t This modules troubleshooting Module Work?

  3. Chapter 3 Logging

    1. Getting More logs entries, details Details in Your Log Entries

    2. Getting More error log, details logs error, details Detailed Errors

    3. POST, contents, logging Logging logs POST contents POST Contents

    4. clients, proxied, logging IP addresses IP addresses logging, proxied clients proxies clients, logging IP addresses Logging a logs proxied clients, IP addresses Proxied Client’s IP Address

    5. MAC, addresses, logging Logging Client logs MAC addresses MAC Addresses

    6. cookies, logging Logging logs cookies Cookies

    7. Not Logging logs image requests, local pages Image Requests from Local Pages

    8. logs logfiles, rotating at specific times Rotating Logfiles at a Particular Time

    9. logs rotating Rotating Logs on the First of the Month

    10. hostnames logging Logging logs hostnames Hostnames Instead of IP Addresses

    11. Maintaining logs virtual hosts separate logs Separate Logs for Each Virtual Host

    12. proxies requests, logging Logging logs proxy requests Proxy Requests

    13. Logging logs errors, virtual hosts, multiple files Errors for Virtual Hosts to Multiple Files

    14. IP addresses servers, logging Logging logs server IP addresses Server servers IP addresses, logging IP Addresses

    15. Logging the logs referring page Referring Page

    16. browser, software name, logging software, browser, logging name Logging the logs browser software name Name of the Browser Software

    17. Logging logs arbitrary request header fields request header, arbitrary fields, logging Arbitrary Request Header Fields

    18. Logging logs arbitrary response header fields response header, arbitrary fields, logging Arbitrary Response Header Fields

    19. databases MySQL, logging activity Logging logs MySQL database activity MySQL database, logging activity Activity to a MySQL Database

    20. Logging logs to syslog to syslog

    21. Logging logs user directories User Directories

  4. Chapter 4 Virtual Hosts

    1. Setting Up Name-Based Virtual Hosts

    2. Designating One Name-Based Virtual Host as the name-based virtual hosts default virtual hosts name-based default Default

    3. Setting Up address-based virtual hosts virtual hosts address-based setup Address-Based Virtual Hosts

    4. Creating a virtual hosts address-based default Default Address-Based Virtual Host

    5. virtual hosts address-based mixing with name-based virtual hosts name-based mixing with address-based Mixing Address-Based and Name-Based Virtual Hosts

    6. Mass Virtual Hosting with mod_vhost_alias virtual hosts mass mod_vhost_alias and virtual hosts mod_vhost_alias mod_vhost_alias

    7. Mass Virtual Hosting Using Rewrite Rules

    8. Logging for Each logs virtual hosts virtual hosts logging for Virtual Host

    9. logfiles splitting virtual hosts logfiles, splitting Splitting Up a Logfile

    10. port-based virtual hosts virtual hosts port-based Port-Based Virtual Hosts

    11. addresses, displaying same content on multiple Displaying the Same Content on Several Addresses

    12. Defining databases virtual hosts virtual hosts defining in database Virtual Hosts in a Database

  5. Chapter 5 Aliases, Redirecting, and Rewriting

    1. directories URLs mapping mapping, URLs, to directories URLs (Uniform Resource Locators) mapping to directories Mapping a URL to a Directory

    2. Creating a URLs (Uniform Resource Locators) new, creating for existing content New URL for Existing Content

    3. Giving URLs (Uniform Resource Locators) users having own URLs Users Their Own URLs

    4. URLs (Uniform Resource Locators) aliasing, one directive Aliasing Several aliases URLs, several with one directive URLs with a Single Directive

    5. directories URLs mapping to same CGI directory Mapping Several URLs to the URLs (Uniform Resource Locators) mapping to directories same CGI directory Same CGI Directory

    6. CGI directories creating for each user directories CGI creating for each user Creating a CGI Directory for Each User

    7. Redirecting redirecting URLs to another location to Another Location

    8. Redirecting Several URLs to the redirecting URLs to same destination Same Destination

    9. Permitting case-insensitive URLs URLs (Uniform Resource Locators) case-insensitive Case-Insensitive URLs

    10. Showing PHP source, highlighted without symlinking symlinking, highlighted PHP source without Highlighted PHP Source without Symlinking

    11. URLs (Uniform Resource Locators) replacing text in requested Replacing Text in Requested URLs

    12. CGI arguments, rewriting path information Rewriting rewriting path information to CGI arguments Path Information to CGI Arguments

    13. requests unreferred denying access to unreferred requests denying access to Denying Access to Unreferred Requests

    14. requests unreferred redirecting to explanation page unreferred requests redirecting to explanation page Redirecting redirecting unreferred requests to explanation page Unreferred Requests to an Explanation Page

    15. query strings, rewriting based on Rewriting rewriting based on query string Based on the Query String

    16. SSL (Secure Socket Layers) redirecting to Redirecting All—or Part—of Your Server redirecting to SSL to SSL

    17. directories turning into hostnames hostnames turning directories into Turning Directories into Hostnames

    18. requests redirecting to single host Redirecting All redirecting requests to single host Requests to a Single Host

    19. arguments, turning document names into documents names, turning into arguments Turning Document Names into Arguments

    20. URLs (Uniform Resource Locators) elements, rewriting between path and query string Rewriting rewriting URL elements between path and query string Elements between Path and Query String

    21. directories rewriting hostnames to hostnames rewriting to directory Rewriting a rewriting hostnames to directories Hostname to a Directory

    22. query arguments, turning URL segments into URLs (Uniform Resource Locators) segments, turning into query arguments Turning URL Segments into Query Arguments

    23. Using AliasMatch AliasMatch, ScriptAliasMatch ScriptAliasMatch, and RedirectMatch RedirectMatch

  6. Chapter 6 Security

    1. Using authentication system account information and security authentication system account information and System Account Information for Web Authentication

    2. Setting Up passwords single-use security passwords single-use single-use passwords Single-Use Passwords

    3. expiring passwords passwords expiring security passwords expiring Expiring Passwords

    4. uploads, size, limiting Limiting Upload Size

    5. images, restricting off-site use off-site use of images, restricting Restricting Images from Being Used Off-Site

    6. authentication strong, requiring security authentication requiring weak and strong Requiring Both authentication weak, requiring weak authentication, requiring Weak and strong authentication, requiring Strong Authentication

    7. Managing .htpasswd files passwords .htpasswd files security passwords .htpasswd files .htpasswd Files

    8. Making authentication digest authentication password files and digest authentication password files and Password Files for passwords digest authentication and Digest Authentication

    9. directories subdirectories, relaxing security in security relaxing in subdirectories subdirectories, relaxing security in Relaxing Security in a Subdirectory

    10. security lifting restrictions selectively Lifting Restrictions Selectively

    11. files ownership, authorizing ownerhips of files, authorizing security file ownership, authorizing Authorizing Using File Ownership

    12. Storing MySQL user credentials security user credentials, MySQL databases User Credentials in a MySQL Database

    13. authentication usernames, accessing security authentication username access usernames, authenticated, accessing Accessing the Authenticated Username

    14. authentication passwords, obtaining passwords obtaining security passwords obtaining Obtaining the Password Used to Authenticate

    15. brute-force password attacks, preventing passwords brute-force attacks, preventing security passwords preventing brute-force attacks Preventing Brute-Force Password Attacks

    16. Using security authentication digest authentication Digest authentication digest authentication versus basic digest authentication versus basic Versus Basic Authentication

    17. credentials, accessing, embedded in URLs Accessing security credentials embedded in URLs URLs (Uniform Resource Locators) credentials embedded in Credentials Embedded in URLs

    18. Securing security WebDAV WebDAV security WebDAV

    19. WebDAV enabling, writable files and Enabling WebDAV Without Making Files Writable by the Web User

    20. proxies URL access, restricting Restricting URLs (Uniform Resource Locators) proxy access, restricting Proxy Access to Certain URLs

    21. Protecting Files with a files wrappers security wrappers wrappers Wrapper

    22. Protecting files servers, malicious scripts and security server files, protecting servers files, malicious scripts and Server Files from Malicious Scripts

    23. files permissions, setting permissions, setting security file permissions, setting Setting Correct File Permissions

    24. module sets, running minimal security module sets, running minimal Running a Minimal Module Set

    25. files outside Web root, restricting access security files, outside Web root, restricting access Restricting Access to Files Outside Your Web Root

    26. methods, limiting security methods, limiting Limiting Methods by User

    27. range requests, restricting security range requests, restricting Restricting Range Requests

    28. Rebutting DoS attacks, mod_evasive and mod_evasive, DoS attacks and security DoS attacks, mod_evasive and DoS Attacks with mod_evasive

    29. chroot, mod_security and mod_security chroot and security mod_security, chroot and Chrooting Apache with mod_security

    30. authentication migrating to 2.2 security authentication migrating to 2.2 Migrating to 2.2 Authentication

    31. Blocking mod_security worms and security worms, mod_security and worms, mod_security and Worms with mod_security

    32. Mixing read-only access, Subversion repository and Subversion read-only access Read-Only and Subversion write access write access, Subversion repository and Write Access to a Subversion Repository

    33. Using redirecting permanent, forbidden URLs and URLs (Uniform Resource Locators) forbidden, permanent redirects Permanent Redirects to Obscure Forbidden URLs

  7. Chapter 7 SSL

    1. SSL (Secure Socket Layers) installation Installing SSL

    2. Windows SSL installation Installing SSL installation SSL on Windows SSL (Secure Socket Layers) installation on Windows on Windows

    3. Generating self-signed SSL certificates SSL (Secure Socket Layers) certificates self-signed Self-Signed SSL Certificates

    4. SSL (Secure Socket Layers) CAs, trusted, generating Generating a Trusted CAs (Certificate Authorities), trusted, generating CA

    5. Serving a SSL (Secure Socket Layers) portion of site available via Portion of Your Site via SSL

    6. Authenticating with Client authentication SSL, certificates SSL (Secure Socket Layers) certificates authentication and Certificates

    7. virtual hosts SSL SSL SSL (Secure Socket Layers) virtual hosts Virtual Hosts

    8. SSL (Secure Socket Layers) certificates wild card wild card certificates Wildcard Certificates

  8. Chapter 8 Dynamic Content

    1. Enabling a CGI Directory

    2. CGI scripts enabling, non-ScriptAliased directories Enabling CGI Scripts in Non-ScriptAliased Directories

    3. CGI directories default documents, specifying documents CGI directories, specifying Specifying a Default Document in a CGI Directory

    4. Using CGI programs launching, Windows file extensions Windows File Extensions to Windows CGI programs, launching Launch CGI Programs

    5. Using CGI scripts extensions Extensions to Identify CGI Scripts

    6. CGI testing setup Testing that CGI Is Set Up Correctly

    7. CGI form parameters, reading Reading Form Parameters

    8. CGI invoking for certain content types Invoking a CGI Program for Certain Content Types

    9. Getting SSIs (Server-Side Includes) SSIs to Work

    10. Displaying date, last modified last modified date Last Modified Date

    11. Including a Standard Header

    12. Including the CGI program output Output of a CGI Program

    13. CGI scripts running as different user, suexec and Running CGI Scripts as a Different User with suexec

    14. CPAN, installing mod_perl handler mod_perl handler installing from CPAN Installing a mod_perl Handler from CPAN

    15. mod_perl handler writing Writing a mod_perl Handler

    16. PHP script handling, enabling Enabling PHP Script Handling

    17. PHP installation, verifying Verifying PHP Installation

    18. CGI parsing output, SSIs and SSIs (Server-Side Includes) parsing CGI output for Parsing CGI Output for Server Side Includes

    19. Parsing SSIs (Server-Side Includes) ScriptAlias output ScriptAlias Script ScriptAlias output, parsing for SSIs Output for Server-Side Includes

    20. Getting Perl scripts, mod_perl and mod_perl to Handle All mod_perl Perl scripts and Perl Scripts

    21. Python, enabling script handling Enabling Python Script Handling

  9. Chapter 9 Error Handling

    1. Handling a error handling host fields, missing host fields, missing Missing Host Field

    2. Changing the CGI scripts response status error handling CGI scripts, response status Response Status for CGI Scripts

    3. error handling error messages, customized error messages, customized Customized Error Messages

    4. Providing documents error documents, multiple languages error documents, multiple languages Error Documents in Multiple Languages

    5. error handling redirecting, invalid URLs URLs (Uniform Resource Locators) redirecting invalid Redirecting Invalid URLs to Some Other Page

    6. Making error handling displaying error page, Internet Explorer and Internet Explorer, displaying error page Internet Explorer Display Your Error Page

    7. error handling notification on error conditions Notification on Error Conditions

  10. Chapter 10 Proxies

    1. proxies server securing servers proxy securing Securing Your Proxy Server

    2. servers proxy preventing use as open mail relay proxies server preventing use as open mail relay Preventing Your Proxy Server from Being Used as an Open Mail Relay

    3. servers requests, forwarding to another server Forwarding Requests to Another Server

    4. proxies server blocking requests to certain places servers proxy blocking requests to certain places Blocking Proxied Requests to Certain Places

    5. mod_perl proxying content to another server proxies mod_perl content to another server Proxying mod_perl Content to Another Server

    6. caching proxy servers, configuring proxies server caching, configuring servers proxy caching, configuring Configuring a Caching Proxy Server

    7. filters, proxied content proxies filtering proxied content Filtering Proxied Content

    8. Requiring proxies servers, authentication servers proxy authentication Authentication for a authentication proxy servers security authentication proxy servers Proxied Server

    9. proxies mod_proxy_balancer, load balancing and Load mod_proxy_balancer, load balancing and Balancing with load balancing mod_proxy_balancer and mod_proxy_balancer

    10. Proxied proxies virtual hosts and virtual hosts proxies and Virtual Host

    11. FTP, refusing to proxy proxies FTP, refusing to proxy Refusing to Proxy FTP

  11. Chapter 11 Performance

    1. memory, determining need Determining How Much Memory You Need

    2. ab, benchmarking and benchmarking, ab and Benchmarking Apache with ab

    3. Tuning KeepAlive settings KeepAlive Settings

    4. Getting a Snapshot of Your Site’s Activity

    5. DNS lookups, avoiding Avoiding DNS Lookups

    6. symbolic links, optimizing Optimizing links, symbolic, avoiding Symbolic Links

    7. Minimizing the Performance Impact of .htaccess files .htaccess Files

    8. content negotiation, disabling Disabling Content Negotiation

    9. process creation, optimizing Optimizing Process Creation

    10. Tuning thread creation Thread Creation

    11. files frequently viewed, caching frequently viewed files, caching Caching Frequently Viewed Files

    12. load balancing distributing evenly between servers servers load, evenly distributing Distributing Load Evenly Between Several Servers

    13. directories caching Caching Directory Listings

    14. Speeding Up Perl mod_perl CGI programs and Perl CGI programs, mod_perl and CGI Programs with CGI programs mod_perl and mod_perl

    15. dynamic content, caching Caching Dynamic Content

  12. Chapter 12 Directory Listings

    1. directories generating folders, listings, generating Generating Directory/Folder Listings

    2. Display a Standard directories headers/footers Header and Footer on Directory Listings

    3. stylesheets, applying Applying a Stylesheet

    4. directories hiding items Hiding Things from the Listing

    5. directories files searching for Searching for Certain Files in a Directory Listing

    6. directories sorting Sorting the List

    7. Allowing a directories client-specified sort order Client-Specified Sort Order

    8. Specifying How the List Will Be directories formatting Formatted

    9. Allowing the directories client-specified formatting Client to Specify the Formatting

    10. Adding directories files descriptions files descriptions Descriptions to Files

    11. directories document titles, autogenerated documents titles, autogenerated Autogenerated Document Titles

    12. Changing the icons, directory listings Listing directories icons Icons

    13. Listing the Directories First

    14. Ordering by directories files version number directories files version number sorting files version number listing Version Number

    15. Allowing the End User to Specify Version Sorting

    16. Complete directories user control of output User Control of Output

    17. Don’t Allow the directories end-user modification End User to Modify the Listing

    18. directories column suppression Suppressing Certain Columns

    19. Showing Forbidden Files

    20. directories aliases in Aliases in Directory Listings

  13. Chapter 13 Miscellaneous Topics

    1. directives, placement of Placing Directives Properly

    2. .htaccess files renaming Renaming .htaccess Files

    3. directories generating folders, listings, generating Generating Directory/Folder Listings

    4. slashes, trailing in URLs Solving the trailing slashes in URLs URLs (Uniform Resource Locators) trailing slashes “Trailing Slash” Problem

    5. Setting the Content-Type headers Content-Type According to Browser Capability

    6. Handling Missing Host: header field Host: Header Fields

    7. documents default, alternate Alternate Default Document

    8. favicon, default Setting Up a Default “Favicon”

    9. Directory Listings in ScriptAliased Directories

    10. .htaccess files enabling Enabling .htaccess Files

    11. Converting SSIs (Server-Side Includes) IBM/Lotus, converting to Apache IBM/Lotus Server-Side Includes to Apache

  1. Appendix Using Regular Expressions in Apache

    1. What Directives Use regular expressions vocabulary Regular Expressions?

  2. Appendix Troubleshooting

    1. Troubleshooting Methodology

    2. Debugging the troubleshooting debugging configuration Configuration

    3. Debugging troubleshooting debugging premature end of script headers Premature End of Script Headers

    4. Common Problems on Windows

    5. Fixing troubleshooting error messages, build-time Build-Time Error Messages

    6. Getting Server-Side Includes to Work

    7. Debugging Rewrites That Result in troubleshooting Not Found errors “Not Found” Errors

    8. troubleshooting .htaccess files .htaccess Files Having No Effect

    9. troubleshooting address already in use Address Already in Use

  3. Colophon