Squid_ The Definitive Guide - Duane Wessels [0]
Table of Contents
Preface
About This Book
Topics Not Covered
Recommended Reading
Conventions Used in This Book
Comments and Questions
Acknowledgments
1. Introduction
1.1. Web Caching
1.2. A Brief History of Squid
1.3. Hardware and Operating System Requirements
1.4. Squid Is Open Source
1.5. Squid's Home on the Web
1.6. Getting Help
1.6.1. Frequently Asked Questions
1.6.2. Mailing Lists
1.6.3. Professional Support
1.7. Getting Started with Squid
1.8. Exercises
2. Getting Squid
2.1. Versions and Releases
2.2. Use the Source, Luke
2.3. Precompiled Binaries
2.4. Anonymous CVS
2.5. devel.squid-cache.org
2.6. Exercises
3. Compiling and Installing
3.1. Before You Start
3.2. Unpacking the Source
3.3. Pretuning Your Kernel
3.3.1. File Descriptors
3.3.2. Mbuf Clusters
3.3.3. Ephemeral Port Range
3.4. The configure Script
3.4.1. configure Options
3.4.2. Running configure
3.5. make
3.6. make Install
3.7. Applying a Patch
3.8. Running configure Later
3.9. Exercises
4. Configuration Guide for the Eager
4.1. The squid.conf Syntax
4.2. User IDs
4.3. Port Numbers
4.4. Log File Pathnames
4.5. Access Controls
4.6. Visible Hostname
4.7. Administrative Contact Information
4.8. Next Steps
4.9. Exercises
5. Running Squid
5.1. Squid Command-Line Options
5.2. Check Your Configuration File for Errors
5.3. Initializing Cache Directories
5.4. Testing Squid in a Terminal Window
5.5. Running Squid as a Daemon Process
5.5.1. The squid_start Script
5.6. Boot Scripts
5.6.1. /etc/rc.local
5.6.2. init.d and rc.d
5.6.3. /etc/inittab
5.7. A chroot Environment
5.8. Stopping Squid
5.9. Reconfiguring a Running Squid Process
5.10. Rotating the Log Files
5.11. Exercises
6. All About Access Controls
6.1. Access Control Elements
6.1.1. A Few Base ACL Types
6.1.2. ACL Types
6.1.3. External ACLs
6.1.4. Dealing with Long ACL Lists
6.1.5. How Squid Matches Access Control Elements
6.2. Access Control Rules
6.2.1. Access Rule Syntax
6.2.2. How Squid Matches Access Rules
6.2.3. Access List Style
6.2.4. Delayed Checks
6.2.5. Slow and Fast Rule Checks
6.3. Common Scenarios
6.3.1. Allowing Local Clients Only
6.3.2. Blocking a Few Misbehaving Clients
6.3.3. Denying Pornography
6.3.4. Restricting Usage During Working Hours
6.3.5. Preventing Squid from Talking to Non-HTTP Servers
6.3.6. Giving Certain Users Special Access
6.3.7. Preventing Abuse from Siblings
6.3.8. Denying Requests with IP Addresses
6.3.9. An http_reply_access Example
6.3.10. Preventing Cache Hits for Local Sites
6.4. Testing Access Controls
6.5. Exercises
7. Disk Cache Basics
7.1. The cache_dir Directive
7.1.1. Scheme
7.1.2. Directory
7.1.3. Size
7.1.4. L1 and L2
7.1.5. Options
7.2. Disk Space Watermarks
7.3. Object Size Limits
7.4. Allocating Objects to Cache Directories
7.5. Replacement Policies
7.6. Removing Cached Objects
7.6.1. Removing Individual Objects
7.6.2. Removing a Group of Objects
7.6.3. Removing All Objects
7.7. refresh_pattern
7.8. Exercises
8. Advanced Disk Cache Topics
8.1. Do I Have a Disk I/O Bottleneck?
8.2. Filesystem Tuning Options
8.3. Alternative Filesystems
8.4. The aufs Storage Scheme
8.4.1. How aufs Works
8.4.2. aufs Issues
8.4.3. Monitoring aufs Operation
8.5. The diskd Storage Scheme
8.5.1. How diskd Works
8.5.2. Compiling and Configuring diskd
8.5.3. Monitoring diskd
8.6. The coss Storage Scheme
8.6.1. How coss Works
8.6.2. Compiling and Configuring coss
8.6.3. coss Issues
8.7. The null Storage Scheme
8.8. Which Is Best for Me?
8.9. Exercises