]> git.donarmstrong.com Git - dsa-puppet.git/blob - modules/roles/templates/apache-www.debian.org.erb
aee7380b1612f3386ac26c1b4c7eacd61cf99ce2
[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.*.debian.org
94
95    ServerAlias www.debian.net
96    ServerAlias debian.net
97
98    ServerAlias www.debian.eu
99    ServerAlias debian.eu
100
101    ServerAlias www.debian.com
102    ServerAlias debian.com
103
104    ServerAlias debian.us
105    ServerAlias www.debian.us
106
107    ServerAlias debian.gr
108    ServerAlias www.debian.gr
109
110    ServerAlias www.debian.es
111    ServerAlias debian.es
112
113    ServerAlias www.debian.at
114    ServerAlias www.debian.de
115    ServerAlias newwww.deb.at
116
117    DocumentRoot <%= wwwdo_document_root %>/
118    ErrorLog /var/log/apache2/www-other.debian.org-error.log
119    CustomLog /var/log/apache2/www-other.debian.org-access.log privacy
120    RewriteLog /var/log/apache2/www-other.debian.org-redirect.log
121    RewriteLogLevel 1
122
123    RewriteEngine on
124    RewriteRule ^/(.*)$ http://www.debian.org/$1 [R=301,L]
125 </VirtualHost>
126
127
128
129 <Macro common-www.d.o>
130    ServerName www.debian.org
131    ServerAdmin webmaster@debian.org
132    ServerAlias www-*.debian.org
133    DocumentRoot <%= wwwdo_document_root %>/
134    ErrorLog /var/log/apache2/www.debian.org-error.log
135    CustomLog /var/log/apache2/www.debian.org-access.log privacy
136
137    # CacheNegotiatedDocs: By default, Apache sends Pragma: no-cache with each
138    # document that was negotiated on the basis of content. This asks proxy
139    # servers not to cache the document. Uncommenting the following line disables
140    # this behavior, and proxies will be allowed to cache the documents.
141    CacheNegotiatedDocs On
142
143 # Custom Error
144    ErrorDocument 404 /devel/website/errors/404
145    RewriteCond %{DOCUMENT_ROOT}/devel/website/errors/404.$2.html -f
146    RewriteRule ^/(?!devel/website/errors/)(.*/)?404\.(.+)\.html$ /devel/website/errors/404.$2.html [L]
147
148 # the joys of backwards compatibility
149    RedirectPermanent /cgi-bin/cvsweb http://cvs.debian.org
150    RedirectPermanent /Lists-Archives http://lists.debian.org
151    RedirectPermanent /search http://search.debian.org
152    RedirectPermanent /Packages http://packages.debian.org
153    RedirectPermanent /lintian http://lintian.debian.org
154
155    RedirectPermanent /SPI http://www.spi-inc.org
156 #   RedirectPermanent /OpenHardware http://www.openhardware.org
157    RedirectPermanent /OpenSource http://www.opensource.org
158
159    RedirectPermanent /Bugs/db/ix/pseudopackages.html /Bugs/pseudo-packages
160    RewriteEngine on
161    RewriteRule ^/Bugs/db/pa/l([^/]+).html$ http://bugs.debian.org/$1
162    RewriteRule ^/Bugs/db/[[:digit:]][[:digit:]]/([[:digit:]][[:digit:]][[:digit:]]+).html$ http://bugs.debian.org/$1
163    RewriteRule ^/Bugs/db/ma/l([^/]+).html$ http://bugs.debian.org/cgi-bin/pkgreport.cgi?maintenc=$1
164
165    <IfModule mod_userdir.c>
166       UserDir disabled
167    </IfModule>
168
169    RedirectPermanent /devel/todo/ /devel/wnpp/help_requested_bypop
170    RedirectPermanent /doc/FAQ /doc/manuals/debian-faq
171    RedirectPermanent /doc/manuals/debian-fr-howto /doc/manuals/fr/debian-fr-howto
172    RedirectPermanent /doc/manuals/reference /doc/manuals/debian-reference
173    RedirectPermanent /doc/packaging-manuals/developers-reference /doc/manuals/developers-reference
174    RedirectPermanent /doc/packaging-manuals/packaging-tutorial /doc/manuals/packaging-tutorial
175    RedirectPermanent /doc/prospective-packages /devel/wnpp/
176    RedirectPermanent /devel/maintainer_contacts /intro/organization
177    RedirectPermanent /devel/debian-installer/gtk-frontend http://wiki.debian.org/DebianInstaller/GUI
178    RedirectPermanent /zh/ /international/Chinese/
179    RedirectPermanent /chinese/ /international/Chinese/
180    RedirectPermanent /devel/help /devel/join/
181    RedirectPermanent /distrib/books /doc/books
182    RedirectPermanent /distrib/floppyinst /distrib/netinst
183    RedirectPermanent /distrib/netboot /distrib/netinst
184    RedirectPermanent /distrib/vendors /CD/vendors/
185    RedirectPermanent /distrib/cd /CD/
186    RedirectPermanent /distrib/cdinfo /CD/vendors/info
187    RedirectPermanent /related_links /misc/related_links
188    RedirectPermanent /ports/laptops /misc/laptops/
189    RedirectPermanent /misc/README.mirrors /mirror/list
190    RedirectPermanent /misc/README.non-US /mirror/list.non-US
191    RedirectPermanent /intl /international
192    RedirectPermanent /ports/armel  /ports/arm
193    RedirectPermanent /ports/armhf  /ports/arm
194    RedirectPermanent /ports/mipsel /ports/mips
195    RedirectPermanent /ports/kfreebsd-amd64 /ports/kfreebsd-gnu
196    RedirectPermanent /ports/kfreebsd-i386  /ports/kfreebsd-gnu
197    RedirectPermanent /ports/sparc64 /ports/sparc
198    RedirectPermanent /ports/s390x   /ports/s390
199    RedirectPermanent /mirror/mirrors_full.html /mirror/list-full.html
200    RedirectPermanent /mirrors /mirror
201    RedirectPermanent /News/project /News/weekly
202    RedirectPermanent /releases/2.0 /releases/hamm
203    RedirectPermanent /releases/2.1 /releases/slink
204    RedirectPermanent /releases/2.2 /releases/potato
205    RedirectPermanent /releases/3.0 /releases/woody
206    RedirectPermanent /releases/3.1 /releases/sarge
207    RedirectPermanent /releases/4.0 /releases/etch
208    RedirectPermanent /releases/5.0 /releases/lenny
209    RedirectPermanent /releases/6.0 /releases/squeeze
210    RedirectPermanent /releases/7 /releases/wheezy
211    RedirectPermanent /releases/8 /releases/jessie
212    RedirectPermanent /releases/unstable /releases/sid
213
214    RewriteRule ^/ports/freebsd(.*) /ports/kfreebsd-gnu/ [R=301]
215    RewriteRule ^/devel/debian-installer/report-template(.*) /releases/stable/i386/ch05s04.html#submit-bug [NE,R=301]
216    RewriteRule ^/devel/debian-installer/hooks(.*) http://d-i.alioth.debian.org/doc/internals/apb.html [R=301]
217    RewriteRule ^/doc/packaging-manuals/mime-policy(.*) /doc/debian-policy/ch-opersys.html#s-mime [NE,R=301]
218
219    RewriteRule ^/volatile/index.* - [S=1]
220    RewriteRule ^/volatile/.+ /volatile/ [L,R=301]
221    RewriteRule ^/devel/debian-volatile/.* /volatile/ [R=301]
222
223 # Offer a Redirect to DSA without knowing year #474730
224    RewriteMap dsa txt:<%= wwwdo_document_root %>/security/map-dsa.txt
225    RewriteRule ^/security/dsa-(\d+)(\..*)? /security/${dsa:$1}$2 [R=301]
226
227 # Compatibility after SGML -> DocBook
228 # Debian Reference #624239
229    RewriteMap reference txt:<%= wwwdo_document_root %>/doc/map-reference.txt
230    RewriteCond %{DOCUMENT_ROOT}/doc/manuals/debian-reference/ch-support$1 !-f
231    RewriteRule ^/doc/manuals/debian-reference/ch-support(.*)  /support$1 [L,R=301]
232    RewriteCond %{DOCUMENT_ROOT}/doc/manuals/debian-reference/${reference:$1}$2 -f
233    RewriteRule ^/doc/manuals/debian-reference/ch-([^\.]+)(.+) /doc/manuals/debian-reference/${reference:$1}$2 [L,R=301]
234    RewriteRule ^/doc/manuals/debian-reference/ch-([^\.]+)$    /doc/manuals/debian-reference/${reference:$1}     [R=301]
235    RewriteCond %{DOCUMENT_ROOT}/doc/manuals/debian-reference/apa$1 -f
236    RewriteRule ^/doc/manuals/debian-reference/ap-appendix(.+) /doc/manuals/debian-reference/apa$1 [L,R=301]
237    RewriteRule ^/doc/manuals/debian-reference/ap-appendix$    /doc/manuals/debian-reference/apa     [R=301]
238    RewriteCond %{DOCUMENT_ROOT}/doc/manuals/debian-reference/footnotes$1 !-f
239    RewriteRule ^/doc/manuals/debian-reference/footnotes(.+)   /doc/manuals/debian-reference/index$1 [L,R=301]
240    RewriteRule ^/doc/manuals/debian-reference/footnotes$      /doc/manuals/debian-reference/          [R=301]
241 # New Maintainers' Guide
242    RewriteRule ^/doc/(manuals/)?maint-guide/ch-(.*) /doc/manuals/maint-guide/$2 [R=301]
243    RewriteRule ^/doc/(manuals/)?maint-guide/footnotes(.*) /doc/manuals/maint-guide/index$2 [R=301]
244
245 # Canonical place for manuals under /doc/manuals/
246    RewriteCond %{DOCUMENT_ROOT}/doc/manuals/$1 -d
247    RewriteRule ^/doc/([^/]+)/?(.*)? /doc/manuals/$1/$2 [L,R=301]
248 </Macro>
249
250
251 <VirtualHost <%= vhost_listen %> >
252    Use common-www.d.o
253 </VirtualHost>
254 <VirtualHost <%= vhost_listen_443 %> >
255    Use common-www.d.o
256
257    Use common-debian-service-ssl www.debian.org
258    Use common-ssl-HSTS
259 </VirtualHost>
260
261
262 <VirtualHost <%= vhost_listen_443 %> >
263    ServerName debian.org
264    ServerAdmin webmaster@debian.org
265
266    CustomLog /var/log/apache2/www-other-access.log privacy
267    ErrorLog /var/log/apache2/www-other-error.log
268
269    Redirect permanent / https://www.debian.org/
270
271    Use common-debian-service-ssl www.debian.org
272    Use common-ssl-HSTS
273 </VirtualHost>