* publish internal tools for svn/trac
[lab.git] / TipAndDoc / apache2 / sites-available / lab
1 <VirtualHost *:80>
2 #   General setup for the virtual host
3         ServerName lab.mitty.jp
4         ServerSignature On
5
6         LogLevel warn
7         ErrorLog "|/usr/sbin/rotatelogs /var/log/apache2/error_lab_%Y%m%d_log 86400 540"
8         CustomLog "|/usr/sbin/rotatelogs /var/log/apache2/access_lab_%Y%m%d_log 86400 540" combined
9
10         DocumentRoot "/var/www/lab"
11         <Directory />
12                 Options FollowSymLinks
13                 AllowOverride None
14                 Order Deny,Allow
15                 Deny from all
16         </Directory>
17         <Directory /var/www/lab>
18                 Order Allow,Deny
19                 Allow from all
20         </Directory>
21
22 # Alias for project independent contents
23         <Location /static>
24                 Order Allow,Deny
25                 Allow from all
26         </Location>
27         Alias /static/trac      /var/www/trac
28         Alias /static/svn       /home/tools/www/svn
29         Alias /static/htdocs    /home/tools/trac/htdocs
30
31 # Alias for SVN
32         RedirectMatch ^/svn$ /svn/
33         <Location /svn/>
34                 # Requests for a collection must have a trailing slash on the URI.
35                 DAV svn
36                 SVNParentPath /var/svn/lab
37                 SVNListParentPath on
38                 SVNIndexXSLT "/static/svn/svnindex.xsl"
39                 <LimitExcept GET PROPFIND OPTIONS REPORT>
40                         Order Allow,Deny
41                         Deny from all
42                 </LimitExcept>
43                 Order Allow,Deny
44                 Allow from all
45         </Location>
46
47 # Alias for Trac
48         ScriptAlias /trac       /home/tools/trac/cgi-bin/trac.fcgi
49         FcgidInitialEnv PYTHON_EGG_CACHE "/tmp"
50         FcgidInitialEnv TRAC_ENV_PARENT_DIR "/var/trac/lab"
51
52         # increase fcgi timeout value to wait slow cgi exec
53         FcgidIOTimeout 180
54
55         <Location /trac>
56                 <LimitExcept GET>
57                         Order Allow,Deny
58                         Deny from all
59                 </LimitExcept>
60                 Order Allow,Deny
61                 Allow from all
62         </Location>
63         <LocationMatch /trac/[^/]+/login>
64                 Deny from all
65         </LocationMatch>
66
67 ## Trac query redirect
68         RewriteEngine On
69         RewriteCond %{QUERY_STRING} ^$
70         RewriteCond %{REQUEST_METHOD} !POST
71         RewriteCond %{HTTP_COOKIE} !trac_auth=
72         RewriteRule ^/trac/([^/]+)/query$ /trac/$1/query?status=!&group=component [R,L]
73
74 </VirtualHost>