It sometimes happens that even though you have passwords controlling the access to certain things on your site, you also want to allow guests to come and sample the site’s joys — probably a reduced set of joys, mediated by the username passed on by the client’s browser. The Apache module mod_auth_anon.c allows you to do this.
We have to say that the whole enterprise seems rather silly. If you want security at all on any part of your site, you need to use SSL. If you then want to make some of the material accessible to everyone, you can give them a different URL or a link from a reception page. However, it seems that some people want to do this to capture visitors’ email addresses (using a long-standing convention for anonymous access), and if that is what you want, and if your users’ browsers are configured to provide that information, then here’s how.
The module should be compiled in automatically — check by looking
at Configuration or by running httpd
-l
. If it wasn’t
compiled in, you will probably get this unnerving error message:
Invalid command Anonymous
when you try to exercise the Anonymous
directive.
The Config file in ...
/site.anon/conf/httpd.conf is as
follows:
User webuser Group webgroup ServerName www.butterthlies.com IdentityCheck on NameVirtualHost 192.168.123.2 <VirtualHost www.butterthlies.com> ServerAdmin sales@butterthlies.com DocumentRoot /usr/www/APACHE3/site.anon/htdocs/customers ServerName www.butterthlies.com ErrorLog /usr/www/APACHE3/site.anon/logs/customers/error_log TransferLog /usr/www/APACHE3/site.anon/logs/access_log ScriptAlias /cgi-bin /usr/www/APACHE3/cgi-bin </VirtualHost> <VirtualHost sales.butterthlies.com> ServerAdmin sales_mgr@butterthlies.com DocumentRoot /usr/www/APACHE3/site.anon/htdocs/salesmen ServerName sales.butterthlies.com ErrorLog /usr/www/APACHE3/site.anon/logs/error_log TransferLog /usr/www/APACHE3/site.anon/logs/salesmen/access_log ScriptAlias /cgi-bin /usr/www/APACHE3/cgi-bin <Directory /usr/www/APACHE3/site.anon/htdocs/salesmen> AuthType Basic AuthName darkness AuthUserFile /usr/www/APACHE3/ok_users/sales AuthGroupFile /usr/www/APACHE3/ok_users/groups require valid-user Anonymous guest anonymous air-head Anonymous_NoUserID on </Directory> </VirtualHost>
Run go
and try accessing
http://sales.butterthlies.com /. You should be
asked for a password in the usual way. The difference is that now you
can also get in by being guest,
air-head
, or
anonymous. You may have to type something in the
password field. The
Anonymous
directives follow.