1 mod_dontdothat is an Apache module that allows you to block specific types
2 of Subversion requests. Specifically, it's designed to keep users from doing
3 things that are particularly hard on the server, like checking out the root
4 of the tree, or the tags or branches directories. It works by sticking an
5 input filter in front of all REPORT requests and looking for dangerous types
6 of requests. If it finds any, it returns a 403 Forbidden error.
8 You can compile and install it via apxs:
11 -I$PREFIX/include/subversion-1 \
12 -L$PREFIX/lib -lsvn_subr-1
15 $ apxs -i -n dontdothat mod_dontdothat.la
17 It is enabled via single httpd.conf directive, DontDoThatConfigFile:
21 SVNParentPath /path/to/repositories
22 DontDoThatConfigFile /path/to/config.file
25 The file you give to DontDoThatConfigFile is a Subversion configuration file
26 that contains the following sections.
38 As you might guess, this defines a set of patterns that control what the
39 user is not allowed to do. Anything with a 'deny' after it is denied, and
40 as a fallback mechanism anything with an 'allow' after it is special cased
41 to be allowed, even if it matches something that is denied.
43 Note that the wildcard portions of a rule only swallow a single directory,
44 so /* will match /foo, but not /foo/bar. They also must be at the end of
45 a directory segment, so /foo* or /* are valid, but /*foo is not.
47 These rules are applied to any recursive action, which basically means any
48 Subversion command that goes through the update-report, like update, diff,