]> git.deb.at Git - deb/packages.git/blob - conf/apache.conf.sed.in
apache.conf: Some more URIs need to be handled dynamically
[deb/packages.git] / conf / apache.conf.sed.in
1 # Need to turn on negotiation_module
2 <Directory %TOPDIR%/www/>
3   Options +MultiViews +FollowSymLinks +Indexes
4   AddHandler type-map var
5   # Make sure that the srm.conf directive is commented out.
6   AddDefaultCharSet utf-8
7   AllowOverride AuthConfig FileInfo
8
9   # Nice caching..
10   ExpiresActive On
11   ExpiresDefault "access plus 1 day"
12   ExpiresByType image/gif "access plus 1 week"
13   ExpiresByType image/jpeg "access plus 1 week"
14
15   # language stuff
16   # you need to keep this in sync with lib/Packages/I18N/Locale.pm
17   # %lang2charset
18   AddLanguage en .en
19   AddLanguage en-us .en-us
20   AddLanguage en-gb .en-gb
21   AddLanguage ar .ar
22   AddLanguage bg .bg
23   AddLanguage ca .ca
24   AddLanguage cs .cs
25   AddLanguage da .da
26   AddLanguage de .de
27   AddLanguage el .el
28   AddLanguage eo .eo
29   AddLanguage es .es
30   AddLanguage fi .fi
31   AddLanguage fr .fr
32   AddLanguage hr .hr
33   AddLanguage hu .hu
34   AddLanguage id .id
35   AddLanguage it .it
36   AddLanguage ja .ja
37   AddLanguage ko .ko
38   AddLanguage lt .lt
39   AddLanguage nl .nl
40   AddLanguage no .no
41   AddLanguage nb .nb
42   AddLanguage pl .pl
43   AddLanguage pt .pt
44   AddLanguage pt-pt .pt_PT
45   AddLanguage pt-br .pt_BR
46   AddLanguage ro .ro
47   AddLanguage ru .ru
48   AddLanguage sk .sk
49   AddLanguage sl .sl
50   AddLanguage sv .sv_SE
51   AddLanguage tr .tr
52   AddLanguage uk .uk
53   AddLanguage zh-CN .zh-cn
54   AddLanguage zh-HK .zh-hk
55   AddLanguage zh-TW .zh-tw
56   LanguagePriority en fr de it es ja pl hr da pt pt-pt pt-br fi zh-cn zh-hk zh-tw cs sv sv-se ko no nb ru tr uk eo ar nl hu ro sk el ca en-us en-gb id lt sl bg
57
58   DirectoryIndex index
59
60   # RSS stuff
61   AddType application/rss+xml .rdf .xml
62
63   RemoveType .gz
64   AddEncoding x-gzip .gz
65 </Directory>
66
67 <VirtualHost *>
68    ServerAdmin webmaster@debian.org
69    DocumentRoot %TOPDIR%/www/
70    ServerName %SITE%
71    ErrorLog /var/log/apache2/%SITE%-error.log
72    CustomLog /var/log/apache2/%SITE%-access.log combined
73
74    Alias /cgi-bin/ %TOPDIR%/cgi-bin/
75   
76    PerlModule ModPerl::Registry
77    PerlTaintCheck On
78    PerlRequire %TOPDIR%/bin/mod_perl-startup
79    PerlSwitches -T
80    <Location /cgi-bin/>
81       SetHandler perl-script
82       # mod-perl etch
83       PerlInitHandler Apache2::Reload
84       # mod-perl sarge
85       #PerlInitHandler Apache::Reload
86       PerlHandler ModPerl::Registry
87       Options +ExecCGI
88       PerlSendHeader On
89       allow from all
90    </Location>
91
92    BrowserMatch reportbug is_reportbug
93
94    RewriteEngine on
95    RewriteLog /var/log/apache2/rewrite.log
96    RewriteLogLevel 0
97
98    RewriteMap changelog-url txt:%TOPDIR%/files/changelogs-map
99
100    RewriteRule ^/cgi-bin/search_packages.pl(.*)$ /search$1
101    RewriteRule ^/cgi-bin/search_contents.pl(.*)$ /search$1
102    RewriteRule ^/unstable/newpkg_([a-z]+)\.[a-z]+\.rdf /unstable/$1/newpkg?format=rss [R=permanent,L]
103    RewriteRule ^/unstable/newpkg_([a-z]+) /unstable/$1/newpkg [R=permanent,L]
104
105    # we never want to rewrite those URLs
106    RewriteRule ^/cgi-bin/dispatcher.pl - [L]
107    RewriteRule ^/changelogs/ - [L]
108    RewriteRule ^/Pics/ - [L]
109    RewriteRule ^/about/ - [L]
110    RewriteRule ^/[^/]+\.css - [L]
111    RewriteRule ^/[^/]+\.js - [L]
112
113 #   RewriteRule ^/$ http://www.debian.org/distrib/packages
114    RewriteRule ^/$ /index.html [L]
115    RewriteRule ^/([^/+]*)([+])([^/]*)$ "/$1%%{%}2B$3" [N]
116    RewriteRule ^/changelog:(.+)$  http://%SITE%/changelogs/${changelog-url:$1} [R,L,NE]
117    RewriteRule ^/src:([^/]+)$ /source/$1 [R,L,NE]
118    RewriteRule ^/file:(.+)$ http://%SITE%/search?searchon=contents&keywords=$1 [R,L,NE]
119
120    RewriteCond %{QUERY_STRING} =""
121    RewriteCond %TOPDIR%/www%{REQUEST_FILENAME} -f [OR]
122    RewriteCond %TOPDIR%/www%{REQUEST_FILENAME}.en.html -f [OR]
123    RewriteCond %TOPDIR%/www%{REQUEST_FILENAME} -l
124    RewriteRule . - [L]
125
126    RewriteRule ^/(.+)$ /cgi-bin/dispatcher.pl/$1 [L,PT]
127
128 #  In case we need to disable the site again
129
130 #   ErrorDocument 404 /index.html
131 #   RewriteCond %{SCRIPT_FILENAME} !^/(sbin|cgi-bin|Pics|test)/
132 #   RewriteCond %{SCRIPT_FILENAME} !^/favicon.ico
133 #   RewriteCond %{SCRIPT_FILENAME} !^/(stable|testing|unstable|experimental)/
134 #   RewriteRule . /index.html
135
136 </VirtualHost>