Apache is able to report to a client a great deal of what is happening to it internally. The necessary module is contained in the mod_info.c file, which should be included at build time. It provides a comprehensive overview of the server configuration, including all installed modules and directives in the configuration files. This module is not compiled into the server by default. To enable it, either load the corresponding module if you are running Win32 or Unix with DSO support enabled, or add the following line to the server build Config file and rebuild the server:
AddModule modules/standard/mod_info.o
It should also be noted that if mod_info is compiled into the server, its handler capability is available in all configuration files, including per-directory files (e.g., .htaccess). This may have security-related ramifications for your site. To demonstrate how this facility can be applied to any site, the Config file on .../site.info is the .../site.authent file slightly modified:
User webuser Group webgroup ServerName www.butterthlies.com NameVirtualHost 192.168.123.2 LogLevel debug <VirtualHost www.butterthlies.com> #CookieLog logs/cookies AddModuleInfo mod_setenvif.c "This is what I've added to mod_setenvif" ServerAdmin sales@butterthlies.com DocumentRoot /usr/www/APACHE3/site.info/htdocs/customers ServerName www.butterthlies.com ErrorLog /usr/www/APACHE3/site.info/logs/error_log TransferLog /usr/www/APACHE3/site.info/logs/customers/access_log ScriptAlias /cgi-bin /usr/www/APACHE3/cgi-bin <Location /server-info> SetHandler server-info </Location> </VirtualHost> <VirtualHost sales.butterthlies.com> CookieLog logs/cookies ServerAdmin sales_mgr@butterthlies.com DocumentRoot /usr/www/APACHE3/site.info/htdocs/salesmen ServerName sales.butterthlies.com ErrorLog /usr/www/APACHE3/site.info/logs/error_log TransferLog /usr/www/APACHE3/site.info/logs/salesmen/access_log ScriptAlias /cgi-bin /usr/www/APACHE3/cgi-bin <Directory /usr/www/APACHE3/site.info/htdocs/salesmen> AuthType Basic #AuthType Digest AuthName darkness AuthUserFile /usr/www/APACHE3/ok_users/sales AuthGroupFile /usr/www/APACHE3/ok_users/groups #AuthDBMUserFile /usr/www/APACHE3/ok_dbm/sales #AuthDBMGroupFile /usr/www/APACHE3/ok_dbm/groups #AuthDigestFile /usr/www/APACHE3/ok_digest/sales require valid-user satisfy any order deny,allow allow from 192.168.123.1 deny from all #require user daphne bill #require group cleaners #require group directors </Directory> <Directory /usr/www/APACHE3/cgi-bin> AuthType Basic AuthName darkness AuthUserFile /usr/www/APACHE3/ok_users/sales AuthGroupFile /usr/www/APACHE3/ok_users/groups #AuthDBMUserFile /usr/www/APACHE3/ok_dbm/sales #AuthDBMGroupFile /usr/www/APACHE3/ok_dbm/groups require valid-user </Directory> </VirtualHost>
Note the AddModuleInfo
line and the
<Location ...>
block.