Book description
What is the new essential for Apache developers? The Apache Phrasebook. Packed with practical solutions, or "phrases," for tasks that the Apache developer much accomplish every day, the phrasebook fills the need for a short, functional, to-the-point reference for Apache. The code contained in the phrasebook is flexible, so it can be easily adapted to your needs. Today's problem is likely to be tomorrow's problem, so don't waste your time on lengthy tutorials. Go straight to practical Apache tools that provide immediately applicable solutions for any situation with the Apache Phrasebook.
Table of contents
- Copyright
- About the Authors
- Acknowledgments
- We Want to Hear from You!
- Reader Services
- Introduction
-
1. Apache Basics
- Discovering Apache
- Determining Whether Apache Is Already Installed
- Installing Apache 1.3 on Linux and Unix
- Installing Apache 2.0 on Linux and Unix
- Installing Apache on Windows
- Configuration File Basics
- Using Multiple Configuration Files
- Starting, Stopping, and Restarting Apache
- Changing the Address and Port Apache Uses
- Changing the User Apache Runs As
- Specifying a Server Name
- Providing an Icon for my Web Page
- Discovering the Modules Available on the Server
- Enabling and Disabling Individual Modules
- Adding Modules after Compiling Apache Without Recompiling
- Publishing Content
-
2. Troubleshooting
- Help! My Apache Server Does Not Work!
- The Error Log
- Logging to the System Log Daemon
- Controlling the Amount of Information Logged
- Testing the Apache Configuration for Problems
- Testing Apache from the Command Line
- Checking That Apache Is Running
- Alternate Ways of Stopping Apache
- Using Apache to Debug Apache
- Startup Errors
- Access Denied Errors
- Internal Server Errors
- Additional Error Log Files
- Redirections Do Not Work
- Troubleshooting Checklist
-
3. Logs and Monitoring
- Introduction to Logging in Apache
- Default Apache Log Files
- Creating Log Formats
- Creating a Custom Log File
- Redirecting Logs to an External Program
- Logging Requests Conditionally
- Monitoring Who Is Linking to Your Website
- Monitoring Apache with mod_status
- Monitoring Apache with SNMP
- Analyzing Your Logs with Open-source Tools
- Monitoring Your Logs in Real Time
- Logging Requests to a Database
- Rotating and Archiving Logs
- Controlling IP Address Resolution
- Processing Logged IP Addresses
- Restarting Apache Automatically If It Fails
- Merging and Splitting Log Files
- Keeping Separate Logs for Each Virtual Host
- Common Log Entries
-
4. URL Mapping and Dynamic Content
- URL Mapping
- Mapping URLs to Files with Alias
- Mapping URL Patterns to Files with AliasMatch
- Redirecting a Page to Another Location
- Redirecting to the Latest Version of a File
- Redirecting Failed or Unauthorized Requests
- Defining Content Handlers
- Understanding MIME Types
- Configuring MIME Types
- Basics of Running CGI Scripts
- Marking Resources As Executable CGIs
- Associating Scripts with HTTP Methods and MIME Types
- Troubleshooting the Execution of CGI Scripts
- Improving CGI Script Performance
- Understanding Server Side Includes
- Configuring Server Side Includes
- Setting Environment Variables
- Setting Environment Variables Dynamically
- Special Environment Variables
- Understanding Content Negotiation
- Configuring Content Negotiation
- Assigning Default Charsets and Language Priorities
- Advanced URL Mapping with mod_rewrite
- Understanding the “Trailing Slash” Problem
- Fixing Spelling Mistakes
- Fixing Capitalization Problems
- Validating Your Pages with Tidy
-
5. Virtual Hosting
- What Is Virtual Hosting?
- What Is IP-based Virtual Hosting?
- Configuring IP-based Virtual Hosting
- What Is Name-based Virtual Hosting?
- Configuring Name-based Virtual Hosting
- What Happens If a Request Does Not Match Any Virtual Host?
- Configuring a Default Name-based Virtual Host
- Configuring a Default IP-based Virtual Host
- Mixing Name-based and IP-based Virtual Hosts
- Debugging Virtual Host Setups
- Using SSL with Name-based Virtual Hosts
- Alternate Virtual Hosting
- Alternate Virtual Hosting Modules
- Per-directory Configuration Files
- Controlling the Scope of Per-directory Configuration Files
- Disabling Per-directory Configuration Files
-
6. Security and Access Control
- Understanding the Need for Access Control
- Differences Between Apache Versions
- Understanding Basic and Digest Authentication
- Introducing Apache Access Control
- Introducing Apache Authorization and Authentication Configuration
- Creating a User Database
- Using Require to Authorize Users and Groups
- Handling a Large Number of Users
- Allowing Access Only to Specific IP Addresses
- Denying Access to Specific IP Addresses
- Combining Access Control Methods
- Customizing Your Access Denied Page
- Putting Users in Control
- Denying Access to System and Sensitive Files
- Restricting Program Execution
- Preventing Abuse
- Disabling Directory Listings
- Changing the Server: Header
- Preventing Hotlinking to Your Images
- Restricting Specific HTTP Methods
- Restricting Access Based on the Browser Type
- Using Location and Directory Sections
- Additional Authentication Modules
- Apache 2.2
- Keeping Up to Date with Apache Security
- Security Checklist
-
7. SSL/TLS
- What Is SSL?
- How Does SSL Work?
- Compiling OpenSSL
- Encryption Keys
- Creating a Key Pair
- Creating a Password-protected Key Pair
- Remove the Password from a Key
- Certificates
- Creating a Certificate Signing Request
- Showing the Contents of a Certificate Signing Request
- Creating a Self-signed Certificate
- Compiling SSL Support in Apache 1.3
- Compiling SSL Support in Apache 2.x
- Minimal Apache Configuration
- Starting Apache with SSL Support
- SSLPassPhraseDialog
- Improving SSL Performance
- Forcing All Content to Be Served Using SSL
- SSL and Name-based SSL Virtual Hosts
- Using Apache Auth Modules with SSL
- Warning Messages When Accessing an SSL-enabled Website
- Creating Client Certificates
- Authentication Using Client Certificates
- Alternatives to mod_ssl
- Testing SSL-enabled Websites from the Command Line
- Working Around Buggy SSL Implementations
- Complex Access Control with mod_ssl
- Related Chapters
-
8. Content Publishing with DAV
- Content Publishing and Apache
- Introducing WebDAV
- Advantages of Using mod_dav
- WebDAV and the HTTP Protocol
- Installing mod_dav on Apache 2.0
- Installing mod_dav on Apache 1.3
- Basic WebDAV Configuration
- Securing Your WebDAV Configuration
- Accessing DAV Resources from Microsoft Office
- Accessing DAV from Microsoft Windows
- Accessing DAV Resources from Firefox
- Accessing DAV from the Command Line
- Dealing with Buggy Clients
- mod_speling and DAV
- Dynamic Content and DAV
- Enabling Per-user Pages
- Alternate User Directories
- Fixing Problems with DAVLockDB
-
9. Performance and Scalability
- Tuning Apache
- Understanding Performance and Scalability
- Tuning Your Hardware
- Increasing OS Limits
- Increasing OS Limits on Processes
- Increasing OS File Descriptors
- Controlling External Processes
- Improving File System Performance
- Handling Symbolic Links
- Tuning Network and Status Settings
- Preventing Abuse
- Limiting Connections and Bandwidth
- Dealing with Robots
- Reverse Proxies and Load Balancers
- Caching and Compression
- Module-specific Optimizations
- Alternatives to Apache
-
10. Apache Proxy and Caching Support
- Understanding the Need for Caching and Proxies
- Understanding Forward and Reverse Proxies
- Differences Between Apache 1.3, 2.0, and 2.2
- Enabling mod_proxy Support
- Enabling Forward Proxy Support
- Using a Reverse Proxy to Unify Your URL Space
- Hiding the Backend Servers
- Preventing URLs from Being Reverse Proxied
- Improving Performance
- Offloading SSL Processing
- Passing Proxy Information in Headers
- Manipulating Headers
- Implementing a Caching Proxy
- Caching in Apache 2
- Load Balancing
- Connecting to Tomcat
- Alternate Proxies
- Transparent HTTP Proxies
-
11. Multi Processing and Protocol Modules
- The Evolution of Apache’s Architecture
- Selecting a Multi Processing Module
- Understanding Process-Based MPMs
- Configuring the Prefork MPM
- Understanding Threaded and Hybrid MPMs
- Configuring the Worker MPM
- Using Alternate MPMs
- Understanding Apache 2 Filters
- Using Apache As an FTP Server
- Using Apache As a POP3 Server
- Compressing Content on the Fly
Product information
- Title: Apache Phrasebook
- Author(s):
- Release date: May 2006
- Publisher(s): Sams
- ISBN: 0672328364
You might also like
book
The Definitive Guide to Apache mod_rewrite
Organizing websites is highly dynamic and often chaotic. Thus, it is crucial that host web servers …
book
The Apache Modules Book: Application Development with Apache
"Do you learn best by example and experimentation? This book is ideal. Have your favorite editor …
book
Apache 2 Pocket Reference
Even if you know the Apache web server inside and out, you still need an occasional …
book
Apache Cookbook
Apache is far and away the most widely used web server platform in the world. Both …