The Workshop is designed to help you anticipate possible questions, review what you've learned, and begin learning how to put your knowledge into practice.



Name some Apache settings that might limit scalability or affect Apache performance.


Some of the Apache settings that might affect scalability include the FollowSymLinks, SymLinksIfOwnerMatch arguments to the Options directive, enabling per-directory configuration files, hostname lookups, having a scoreboard file, and statistics collection with mod_status.


Name some operating system settings that might limit scalability.


Some operating system settings that might affect scalability include limits for number of processes, open file descriptors, and memory allowed per process.


Name some approaches to improve performance.


The following are some suggestions for improving performance: load distribution via a hardware load balancer or reverse proxy, data compression, caching, mapping files to memory, and compiling modules statically.


Which VirtualHost container gets a request if the connection uses NameVirtualHost, but no Host header is sent?


Reading the configuration top-to-bottom, the first VirtualHost container is favored. The same behavior occurs if there is a Host header, but no VirtualHost container that matches it.


Is the ServerName directive necessary in a VirtualHost container?


Only when name-based virtual hosts are used. The Host header contents are compared to the contents of the ServerName directive. If a match isn't satisfied, the VirtualHost containers' ServerAlias directive value(s) are checked for matches.

    Part III: Getting Involved with the Code