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