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