new munin cert
[mirror/dsa-puppet.git] / modules / roles / templates / apache-www.debian.org.erb
1 ##
2 ## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE.
3 ## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git
4 ##
5
6 # Need to turn on negotiation_module
7 <Directory <%= wwwdo_document_root %>/>
8   Options +MultiViews +FollowSymLinks +Indexes
9   AddHandler type-map var
10   # Make sure that the srm.conf directive is commented out.
11   AddDefaultCharSet Off
12   AllowOverride AuthConfig FileInfo
13
14   # Serve icons as image/x-icon
15   AddType image/x-icon .ico
16
17   # Serve RSS feeds as application/rss+xml
18   AddType application/rss+xml .rdf
19
20   # Nice caching..
21   ExpiresActive On
22   ExpiresDefault "access plus 1 day"
23   ExpiresByType image/gif "access plus 1 week"
24   ExpiresByType image/jpeg "access plus 1 week"
25   ExpiresByType image/png "access plus 1 week"
26   ExpiresByType image/x-icon "access plus 1 week"
27
28   # FileEtag needs to be the same across mirrors (used for caching, ignore inode)
29   FileEtag MTime Size
30
31   # language stuff, for web site translations
32   # for boot-floppies docs only: sk
33   AddLanguage en .en
34   AddLanguage en-us .en-us
35   AddLanguage en-gb .en-gb
36   AddLanguage ar .ar
37   AddLanguage bg .bg
38   AddLanguage ca .ca
39   AddLanguage cs .cs
40   AddLanguage da .da
41   AddLanguage de .de
42   AddLanguage el .el
43   AddLanguage eo .eo
44   AddLanguage es .es
45   AddLanguage fi .fi
46   AddLanguage fr .fr
47   AddLanguage hr .hr
48   AddLanguage hu .hu
49   AddLanguage hy .hy
50   AddLanguage id .id
51   AddLanguage it .it
52   AddLanguage ja .ja
53   AddLanguage ko .ko
54   AddLanguage lt .lt
55   AddLanguage nl .nl
56   AddLanguage no .no
57   AddLanguage nb .nb
58   AddLanguage pl .pl
59   AddLanguage pt .pt
60   AddLanguage pt-br .pt-br
61   AddLanguage ro .ro
62   AddLanguage ru .ru
63   AddLanguage sk .sk
64   AddLanguage sl .sl
65   AddLanguage sv .sv
66   AddLanguage tr .tr
67   AddLanguage uk .uk
68   AddLanguage vi .vi
69   AddLanguage zh-CN .zh-cn
70   AddLanguage zh-HK .zh-hk
71   AddLanguage zh-TW .zh-tw
72   LanguagePriority en fr de it es ja pl hr da pt pt-br fi zh-cn zh-hk zh-tw cs sv ko no nb ru tr eo ar nl hu ro sk el ca en-us en-gb id lt sl bg uk hy vi
73
74   DirectoryIndex maintenance index index.html index.shtml index.htm
75
76   <Files *.html.es>
77     ForceType text/html
78   </Files>
79
80   <Files *.pdf.es>
81     ForceType application/pdf
82   </Files>
83
84   <Files *.txt.es>
85     ForceType text/plain
86   </Files>
87 </Directory>
88
89 <VirtualHost <%= vhost_listen %> >
90    ServerName debian.org
91    ServerAdmin webmaster@debian.org
92
93    ServerAlias www.at.debian.org
94    ServerAlias www.au.debian.org
95    ServerAlias www.bg.debian.org
96    ServerAlias www.br.debian.org
97    ServerAlias www.cn.debian.org
98    ServerAlias www.de.debian.org
99    ServerAlias www.es.debian.org
100    ServerAlias www.fr.debian.org
101    ServerAlias www.hk.debian.org
102    ServerAlias www.id.debian.org
103    ServerAlias www.jp.debian.org
104    ServerAlias www.nl.debian.org
105    ServerAlias www.pl.debian.org
106    ServerAlias www.ru.debian.org
107    ServerAlias www.ua.debian.org
108    ServerAlias www.uk.debian.org
109    ServerAlias www.us.debian.org
110    ServerAlias www.za.debian.org
111
112    ServerAlias www.debian.net
113    ServerAlias debian.net
114
115    ServerAlias www.debian.eu
116    ServerAlias debian.eu
117
118    ServerAlias www.debian.com
119    ServerAlias debian.com
120
121    ServerAlias debian.us
122    ServerAlias www.debian.us
123
124    ServerAlias debian.gr
125    ServerAlias www.debian.gr
126
127    ServerAlias www.debian.es
128    ServerAlias debian.es
129
130    ServerAlias www.debian.org.tw
131    ServerAlias debian.org.tw
132
133    ServerAlias www.debian.at
134    ServerAlias www.debian.de
135    ServerAlias newwww.deb.at
136
137    DocumentRoot <%= wwwdo_document_root %>/
138    ErrorLog /var/log/apache2/www-other.debian.org-error.log
139    CustomLog /var/log/apache2/www-other.debian.org-access.log privacy
140    RewriteLog /var/log/apache2/www-other.debian.org-redirect.log
141    RewriteLogLevel 1
142
143    RewriteEngine on
144    RewriteRule ^/(.*)$ http://www.debian.org/$1 [R=301,L]
145 </VirtualHost>
146
147
148
149 <Macro common-www.d.o>
150    ServerName www.debian.org
151    ServerAdmin webmaster@debian.org
152    ServerAlias www-*.debian.org
153    DocumentRoot <%= wwwdo_document_root %>/
154
155    # CacheNegotiatedDocs: By default, Apache sends Pragma: no-cache with each
156    # document that was negotiated on the basis of content. This asks proxy
157    # servers not to cache the document. Uncommenting the following line disables
158    # this behavior, and proxies will be allowed to cache the documents.
159    CacheNegotiatedDocs On
160
161 # Custom Error
162    ErrorDocument 404 /devel/website/errors/404
163    RewriteCond %{DOCUMENT_ROOT}/devel/website/errors/404.$2.html -f
164    RewriteRule ^/(?!devel/website/errors/)(.*/)?404\.(.+)\.html$ /devel/website/errors/404.$2.html [L]
165
166 # the joys of backwards compatibility
167    RedirectPermanent /cgi-bin/cvsweb http://cvs.debian.org
168    RedirectPermanent /Lists-Archives http://lists.debian.org
169    RedirectPermanent /search http://search.debian.org
170    RedirectPermanent /Packages http://packages.debian.org
171    RedirectPermanent /lintian http://lintian.debian.org
172
173    RedirectPermanent /SPI http://www.spi-inc.org
174 #   RedirectPermanent /OpenHardware http://www.openhardware.org
175    RedirectPermanent /OpenSource http://www.opensource.org
176
177    RedirectPermanent /Bugs/db/ix/pseudopackages.html /Bugs/pseudo-packages
178    RewriteEngine on
179    RewriteRule ^/Bugs/db/pa/l([^/]+).html$ http://bugs.debian.org/$1
180    RewriteRule ^/Bugs/db/[[:digit:]][[:digit:]]/([[:digit:]][[:digit:]][[:digit:]]+).html$ http://bugs.debian.org/$1
181    RewriteRule ^/Bugs/db/ma/l([^/]+).html$ http://bugs.debian.org/cgi-bin/pkgreport.cgi?maintenc=$1
182
183    <IfModule mod_userdir.c>
184       UserDir disabled
185    </IfModule>
186
187    RedirectPermanent /devel/todo/ /devel/wnpp/help_requested_bypop
188    RedirectPermanent /doc/FAQ /doc/manuals/debian-faq
189    RedirectPermanent /doc/manuals/debian-fr-howto /doc/manuals/fr/debian-fr-howto
190    RedirectPermanent /doc/manuals/reference /doc/manuals/debian-reference
191    RedirectPermanent /doc/packaging-manuals/developers-reference /doc/manuals/developers-reference
192    RedirectPermanent /doc/packaging-manuals/packaging-tutorial /doc/manuals/packaging-tutorial
193    RedirectPermanent /doc/prospective-packages /devel/wnpp/
194    RedirectPermanent /devel/maintainer_contacts /intro/organization
195    RedirectPermanent /devel/debian-installer/gtk-frontend http://wiki.debian.org/DebianInstaller/GUI
196    RedirectPermanent /zh/ /international/Chinese/
197    RedirectPermanent /chinese/ /international/Chinese/
198    RedirectPermanent /devel/help /devel/join/
199    RedirectPermanent /distrib/books /doc/books
200    RedirectPermanent /distrib/floppyinst /distrib/netinst
201    RedirectPermanent /distrib/netboot /distrib/netinst
202    RedirectPermanent /distrib/vendors /CD/vendors/
203    RedirectPermanent /distrib/cd /CD/
204    RedirectPermanent /distrib/cdinfo /CD/vendors/info
205    RedirectPermanent /related_links /misc/related_links
206    RedirectPermanent /ports/laptops /misc/laptops/
207    RedirectPermanent /misc/README.mirrors /mirror/list
208    RedirectPermanent /misc/README.non-US /mirror/list.non-US
209    RedirectPermanent /intl /international
210    RedirectPermanent /ports/armel  /ports/arm
211    RedirectPermanent /ports/armhf  /ports/arm
212    RedirectPermanent /ports/mipsel /ports/mips
213    RedirectPermanent /ports/kfreebsd-amd64 /ports/kfreebsd-gnu
214    RedirectPermanent /ports/kfreebsd-i386  /ports/kfreebsd-gnu
215    RedirectPermanent /ports/sparc64 /ports/sparc
216    RedirectPermanent /ports/s390x   /ports/s390
217    RedirectPermanent /mirror/mirrors_full.html /mirror/list-full.html
218    RedirectPermanent /mirrors /mirror
219    RedirectPermanent /News/project /News/weekly
220    RedirectPermanent /releases/2.0 /releases/hamm
221    RedirectPermanent /releases/2.1 /releases/slink
222    RedirectPermanent /releases/2.2 /releases/potato
223    RedirectPermanent /releases/3.0 /releases/woody
224    RedirectPermanent /releases/3.1 /releases/sarge
225    RedirectPermanent /releases/4.0 /releases/etch
226    RedirectPermanent /releases/5.0 /releases/lenny
227    RedirectPermanent /releases/6.0 /releases/squeeze
228    RedirectPermanent /releases/7 /releases/wheezy
229    RedirectPermanent /releases/8 /releases/jessie
230    RedirectPermanent /releases/unstable /releases/sid
231
232    RewriteRule ^/ports/freebsd(.*) /ports/kfreebsd-gnu/ [R=301]
233    RewriteRule ^/devel/debian-installer/report-template(.*) /releases/stable/i386/ch05s04.html#submit-bug [NE,R=301]
234    RewriteRule ^/devel/debian-installer/hooks(.*) http://d-i.alioth.debian.org/doc/internals/apb.html [R=301]
235    RewriteRule ^/doc/packaging-manuals/mime-policy(.*) /doc/debian-policy/ch-opersys.html#s-mime [NE,R=301]
236
237    RewriteRule ^/volatile/index.* - [S=1]
238    RewriteRule ^/volatile/.+ /volatile/ [L,R=301]
239    RewriteRule ^/devel/debian-volatile/.* /volatile/ [R=301]
240
241 # Offer a Redirect to DSA without knowing year #474730
242    RewriteMap dsa txt:<%= wwwdo_document_root %>/security/map-dsa.txt
243    RewriteRule ^/security/dsa-(\d+)(\..*)? /security/${dsa:$1}$2 [R=301]
244
245 # Compatibility after SGML -> DocBook
246 # Debian Reference #624239
247    RewriteMap reference txt:<%= wwwdo_document_root %>/doc/map-reference.txt
248    RewriteCond %{DOCUMENT_ROOT}/doc/manuals/debian-reference/ch-support$1 !-f
249    RewriteRule ^/doc/manuals/debian-reference/ch-support(.*)  /support$1 [L,R=301]
250    RewriteCond %{DOCUMENT_ROOT}/doc/manuals/debian-reference/${reference:$1}$2 -f
251    RewriteRule ^/doc/manuals/debian-reference/ch-([^\.]+)(.+) /doc/manuals/debian-reference/${reference:$1}$2 [L,R=301]
252    RewriteRule ^/doc/manuals/debian-reference/ch-([^\.]+)$    /doc/manuals/debian-reference/${reference:$1}     [R=301]
253    RewriteCond %{DOCUMENT_ROOT}/doc/manuals/debian-reference/apa$1 -f
254    RewriteRule ^/doc/manuals/debian-reference/ap-appendix(.+) /doc/manuals/debian-reference/apa$1 [L,R=301]
255    RewriteRule ^/doc/manuals/debian-reference/ap-appendix$    /doc/manuals/debian-reference/apa     [R=301]
256    RewriteCond %{DOCUMENT_ROOT}/doc/manuals/debian-reference/footnotes$1 !-f
257    RewriteRule ^/doc/manuals/debian-reference/footnotes(.+)   /doc/manuals/debian-reference/index$1 [L,R=301]
258    RewriteRule ^/doc/manuals/debian-reference/footnotes$      /doc/manuals/debian-reference/          [R=301]
259 # New Maintainers' Guide
260    RewriteRule ^/doc/(manuals/)?maint-guide/ch-(.*) /doc/manuals/maint-guide/$2 [R=301]
261    RewriteRule ^/doc/(manuals/)?maint-guide/footnotes(.*) /doc/manuals/maint-guide/index$2 [R=301]
262
263 # Canonical place for manuals under /doc/manuals/
264    RewriteCond %{DOCUMENT_ROOT}/doc/manuals/$1 -d
265    RewriteRule ^/doc/([^/]+)/?(.*)? /doc/manuals/$1/$2 [L,R=301]
266 </Macro>
267
268
269 <VirtualHost <%= vhost_listen %> >
270    ErrorLog /var/log/apache2/www.debian.org-error.log
271    CustomLog /var/log/apache2/www.debian.org-access.log privacy
272
273    Use common-www.d.o
274 </VirtualHost>
275 <VirtualHost <%= vhost_listen_443 %> >
276    ErrorLog /var/log/apache2/www.debian.org-error.log
277    CustomLog /var/log/apache2/www.debian.org-access.log privacyssl
278
279    Use common-www.d.o
280
281    Use common-debian-service-ssl www.debian.org
282    Use common-ssl-HSTS
283 </VirtualHost>
284
285
286 <VirtualHost <%= vhost_listen_443 %> >
287    ServerName debian.org
288    ServerAdmin webmaster@debian.org
289
290    CustomLog /var/log/apache2/www-other-access.log privacyssl
291    ErrorLog /var/log/apache2/www-other-error.log
292
293    Redirect permanent / https://www.debian.org/
294
295
296    Use common-debian-service-ssl www.debian.org
297    Use common-ssl-HSTS
298 </VirtualHost>