Okay, it seems to be the line
in red below:
<Location /svn_backups>
DAV svn
SVNPath /home/e-smith/files/repositories/svn_backups
SVNAutoVersioning on
ModMimeUsePathInfo off
AuthName "Website backups"
AuthType Basic
[color=red]AuthExternal pwauth[/color]
# Read access:
# Anonymous access
<Limit GET PROPFIND OPTIONS REPORT>
order deny,allow
deny from all
allow from 127.0.0.1 192.168.6.0/255.255.255.0
Satisfy all
</Limit>
# Full access:
# User(s) : backups
<LimitExcept GET PROPFIND OPTIONS REPORT>
order deny,allow
deny from all
# Denying access:
# SSL required, no access allowed without.
Satisfy all
</LimitExcept>
</Location>
If I comment that line out, the authentication works. What I don't understand is how this location section (for subversion) affects other i-bays, but it seems that it does. Perhaps it is because the i-bays use 'directory' sections rather than 'location' sections, and require a slightly different syntax? No idea. As least I know what the line is, so can follow this up.
There are further clues here:
http://blog.innerewut.de/tags/pamIt seems that password authentication cannot be used within a <Location> directive in Apache 2.2, unless the external script definitions are included just before the closing </VirtualHost> tag, i.e.
...
AddExternalAuth pwauth /usr/local/bin/pwauth
SetExternalAuthMethod pwauth pipe
</VirtualHost>
That is probably the solution I am going to have to go for - repeating those two lines in every VirtualHost section. Commenting out the offending 'AuthExternal' lines will be no good, as the authentication will no longer work on the subversion repository.
But the mystery is still with me: why should entry affect any other i-bay? I guess 'Location' is not limited to any particular i-bay, so it applies to them all? Maybe not?