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
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.
12 AllowOverride AuthConfig FileInfo
15 # Serve icons as image/x-icon
16 AddType image/x-icon .ico
18 # Serve RSS feeds as application/rss+xml
19 AddType application/rss+xml .rdf
23 ExpiresDefault "access plus 1 day"
24 ExpiresByType image/gif "access plus 1 week"
25 ExpiresByType image/jpeg "access plus 1 week"
26 ExpiresByType image/png "access plus 1 week"
27 ExpiresByType image/x-icon "access plus 1 week"
29 # FileEtag needs to be the same across mirrors (used for caching, ignore inode)
32 # language stuff, for web site translations
33 # for boot-floppies docs only: sk
35 AddLanguage en-us .en-us
36 AddLanguage en-gb .en-gb
61 AddLanguage pt-br .pt-br
70 AddLanguage zh-CN .zh-cn
71 AddLanguage zh-HK .zh-hk
72 AddLanguage zh-TW .zh-tw
73 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
75 DirectoryIndex maintenance index index.html index.shtml index.htm
82 ForceType application/pdf
90 <Macro common-www-other.d.o>
92 ServerAdmin webmaster@debian.org
94 ServerAlias www.debian.net
95 ServerAlias debian.net
97 ServerAlias www.debian.eu
100 ServerAlias www.debian.nl
101 ServerAlias debian.nl
103 ServerAlias www.debian.com
104 ServerAlias debian.com
106 ServerAlias debian.us
107 ServerAlias www.debian.us
109 ServerAlias debian.gr
110 ServerAlias www.debian.gr
112 ServerAlias www.debian.es
113 ServerAlias debian.es
115 ServerAlias www.debian.at
117 DocumentRoot <%= @wwwdo_document_root %>/
118 LogFormat "0.0.0.0 - %u %{[%d/%b/%Y:00:00:00 %z]}t \"%r\" %>s %b \"%{Referer}i\" \"-\" %V" privacy+host
119 ErrorLog /var/log/apache2/www-other.debian.org-error.log
120 CustomLog /var/log/apache2/www-other.debian.org-access.log privacy+host
123 <Macro common-www.d.o-inner>
124 ServerAdmin webmaster@debian.org
125 DocumentRoot <%= @wwwdo_document_root %>/
127 # CacheNegotiatedDocs: By default, Apache sends Pragma: no-cache with each
128 # document that was negotiated on the basis of content. This asks proxy
129 # servers not to cache the document. Uncommenting the following line disables
130 # this behavior, and proxies will be allowed to cache the documents.
131 CacheNegotiatedDocs On
134 ErrorDocument 404 /devel/website/errors/404
135 RewriteCond %{DOCUMENT_ROOT}/devel/website/errors/404.$2.html -f
136 RewriteRule ^/(?!devel/website/errors/)(.*/)?404\.(.+)\.html$ /devel/website/errors/404.$2.html [L]
138 # the joys of backwards compatibility
139 RedirectPermanent /Lists-Archives https://lists.debian.org
140 RedirectPermanent /search https://search.debian.org
141 RedirectPermanent /Packages https://packages.debian.org
142 RedirectPermanent /lintian https://lintian.debian.org
144 RedirectPermanent /SPI https://www.spi-inc.org
145 # RedirectPermanent /OpenHardware http://www.openhardware.org
146 RedirectPermanent /OpenSource https://opensource.org
148 RedirectPermanent /Bugs/db/ix/pseudopackages.html /Bugs/pseudo-packages
150 RewriteRule ^/Bugs/db/pa/l([^/]+).html$ https://bugs.debian.org/$1
151 RewriteRule ^/Bugs/db/[[:digit:]][[:digit:]]/([[:digit:]][[:digit:]][[:digit:]]+).html$ https://bugs.debian.org/$1
152 RewriteRule ^/Bugs/db/ma/l([^/]+).html$ https://bugs.debian.org/cgi-bin/pkgreport.cgi?maintenc=$1
154 <IfModule mod_userdir.c>
158 RedirectPermanent /devel/todo/ /devel/wnpp/help_requested_bypop
159 RedirectPermanent /doc/FAQ /doc/manuals/debian-faq
160 RedirectPermanent /doc/manuals/debian-fr-howto /doc/manuals/fr/debian-fr-howto
161 RedirectPermanent /doc/manuals/reference /doc/manuals/debian-reference
162 RedirectPermanent /doc/packaging-manuals/developers-reference /doc/manuals/developers-reference
163 RedirectPermanent /doc/packaging-manuals/packaging-tutorial /doc/manuals/packaging-tutorial
164 RedirectPermanent /doc/prospective-packages /devel/wnpp/
165 RedirectPermanent /devel/maintainer_contacts /intro/organization
166 RedirectPermanent /devel/debian-installer/gtk-frontend https://wiki.debian.org/DebianInstaller/GUI
167 RedirectPermanent /zh/ /international/Chinese/
168 RedirectPermanent /chinese/ /international/Chinese/
169 RedirectPermanent /devel/help /devel/join/
170 RedirectPermanent /distrib/books /doc/books
171 RedirectPermanent /distrib/floppyinst /distrib/netinst
172 RedirectPermanent /distrib/netboot /distrib/netinst
173 RedirectPermanent /distrib/vendors /CD/vendors/
174 RedirectPermanent /distrib/cd /CD/
175 RedirectPermanent /distrib/cdinfo /CD/vendors/info
176 RedirectPermanent /related_links /misc/related_links
177 RedirectPermanent /ports/laptops /misc/laptops/
178 RedirectPermanent /misc/README.mirrors /mirror/list
179 RedirectPermanent /misc/README.non-US /mirror/list.non-US
180 RedirectPermanent /intl /international
181 RedirectPermanent /ports/armel /ports/arm
182 RedirectPermanent /ports/armhf /ports/arm
183 RedirectPermanent /ports/arm64 /ports/arm
184 RedirectPermanent /ports/mipsel /ports/mips
185 RedirectPermanent /ports/mips64el /ports/mips
186 RedirectPermanent /ports/kfreebsd-amd64 /ports/kfreebsd-gnu
187 RedirectPermanent /ports/kfreebsd-i386 /ports/kfreebsd-gnu
188 RedirectPermanent /ports/sparc64 /ports/sparc
189 RedirectPermanent /ports/s390x /ports/s390
190 RedirectPermanent /ports/ppc64 /ports/powerpc
191 RedirectPermanent /ports/ppc64el /ports/powerpc
192 RedirectPermanent /ports/powerpcspe /ports/powerpc
193 Redirect /ports/riscv64 https://wiki.debian.org/RISC-V
194 Redirect /ports/x32 https://wiki.debian.org/X32Port
195 Redirect /ports/sh4 https://wiki.debian.org/SH4
196 RedirectPermanent /mirror/official_sponsors /mirror/sponsors
197 RedirectPermanent /mirror/official /mirror/list
198 RedirectPermanent /mirror/mirrors_full.html /mirror/list-full.html
199 RedirectPermanent /mirrors /mirror
200 RedirectPermanent /News/project /News/weekly
201 RedirectPermanent /releases/2.0 /releases/hamm
202 RedirectPermanent /releases/2.1 /releases/slink
203 RedirectPermanent /releases/2.2 /releases/potato
204 RedirectPermanent /releases/3.0 /releases/woody
205 RedirectPermanent /releases/3.1 /releases/sarge
206 RedirectPermanent /releases/4.0 /releases/etch
207 RedirectPermanent /releases/5.0 /releases/lenny
208 RedirectPermanent /releases/6.0 /releases/squeeze
209 RedirectPermanent /releases/7 /releases/wheezy
210 RedirectPermanent /releases/8 /releases/jessie
211 RedirectPermanent /releases/9 /releases/stretch
212 RedirectPermanent /releases/10 /releases/buster
213 RedirectPermanent /releases/unstable /releases/sid
214 RedirectPermanent /support/ /support
216 # Upper-case URLs were a bad idea
217 RedirectPermanent /bugs /Bugs
218 RedirectPermanent /news /News
219 RedirectPermanent /mailinglists /MailingLists
220 RedirectPermanent /cd /CD
222 RewriteRule ^/ports/freebsd(.*) /ports/kfreebsd-gnu/ [R=301]
223 RewriteRule ^/devel/debian-installer/report-template(.*) /releases/stable/i386/ch05s04.html#submit-bug [NE,R=301]
224 RewriteRule ^/devel/debian-installer/hooks(.*) https://d-i.alioth.debian.org/doc/internals/apb.html [R=301]
225 RewriteRule ^/doc/packaging-manuals/mime-policy(.*) /doc/debian-policy/ch-opersys.html#s-mime [NE,R=302]
227 RewriteRule ^/volatile/index.* - [S=1]
228 RewriteRule ^/volatile/.+ /volatile/ [L,R=301]
229 RewriteRule ^/devel/debian-volatile/.* /volatile/ [R=301]
231 # Offer a Redirect to DSA without knowing year #474730
232 RewriteMap dsa txt:<%= @wwwdo_document_root %>/security/map-dsa.txt
233 RewriteRule ^/security/dsa-(\d+)(\..*)? /security/${dsa:$1}$2 [R=301]
235 # Compatibility after SGML -> DocBook
236 # Debian Reference #624239
237 RewriteMap reference txt:<%= @wwwdo_document_root %>/doc/map-reference.txt
238 RewriteCond %{DOCUMENT_ROOT}/doc/manuals/debian-reference/ch-support$1 !-f
239 RewriteRule ^/doc/manuals/debian-reference/ch-support(.*) /support$1 [L,R=301]
240 RewriteCond %{DOCUMENT_ROOT}/doc/manuals/debian-reference/${reference:$1}$2 -f
241 RewriteRule ^/doc/manuals/debian-reference/ch-([^\.]+)(.+) /doc/manuals/debian-reference/${reference:$1}$2 [L,R=301]
242 RewriteRule ^/doc/manuals/debian-reference/ch-([^\.]+)$ /doc/manuals/debian-reference/${reference:$1} [R=301]
243 RewriteCond %{DOCUMENT_ROOT}/doc/manuals/debian-reference/apa$1 -f
244 RewriteRule ^/doc/manuals/debian-reference/ap-appendix(.+) /doc/manuals/debian-reference/apa$1 [L,R=301]
245 RewriteRule ^/doc/manuals/debian-reference/ap-appendix$ /doc/manuals/debian-reference/apa [R=301]
246 RewriteCond %{DOCUMENT_ROOT}/doc/manuals/debian-reference/footnotes$1 !-f
247 RewriteRule ^/doc/manuals/debian-reference/footnotes(.+) /doc/manuals/debian-reference/index$1 [L,R=301]
248 RewriteRule ^/doc/manuals/debian-reference/footnotes$ /doc/manuals/debian-reference/ [R=301]
250 # DevRef filename changes c2016
251 RedirectMatch permanent ^(/doc/manuals/developers-reference)/scope(\.[a-z]{2})?.html $1/ch01$2.html
252 RedirectMatch permanent ^(/doc/manuals/developers-reference)/new-maintainer(\.[a-z]{2})?.html $1/ch02$2.html
253 RedirectMatch permanent ^(/doc/manuals/developers-reference)/developer-duties(\.[a-z]{2})?.html $1/ch03$2.html
254 RedirectMatch permanent ^(/doc/manuals/developers-reference)/resources(\.[a-z]{2})?.html $1/ch04$2.html
255 RedirectMatch permanent ^(/doc/manuals/developers-reference)/pkgs(\.[a-z]{2})?.html $1/ch05$2.html
256 RedirectMatch permanent ^(/doc/manuals/developers-reference)/best-pkging-practices(\.[a-z]{2})?.html $1/ch06$2.html
257 RedirectMatch permanent ^(/doc/manuals/developers-reference)/beyond-pkging(\.[a-z]{2})?.html $1/ch07$2.html
258 RedirectMatch permanent ^(/doc/manuals/developers-reference)/l10n(\.[a-z]{2})?.html $1/ch08$2.html
259 RedirectMatch permanent ^(/doc/manuals/developers-reference)/tools(\.[a-z]{2})?.html $1/apa$2.html
261 # New Maintainers' Guide
262 RewriteRule ^/doc/(manuals/)?maint-guide/ch-(.*) /doc/manuals/maint-guide/$2 [R=301]
263 RewriteRule ^/doc/(manuals/)?maint-guide/footnotes(.*) /doc/manuals/maint-guide/index$2 [R=301]
265 # Compatibility after Debian Policy changed to build with Sphinx (bug #877367)
266 RewriteRule ^/doc/debian-policy/footnotes.html(.*) /doc/debian-policy/ [R=301,L]
268 # Canonical place for manuals under /doc/manuals/
269 RewriteCond %{DOCUMENT_ROOT}/doc/manuals/$1 -d
270 RewriteRule ^/doc/([^/]+)/?(.*)? /doc/manuals/$1/$2 [L,R=301]
271 RewriteRule ^/doc/manuals/?$ /doc/ [L,R=301]
273 # Relocation of blends pages
274 RewriteRule ^/devel/hamradio(.*)$ /blends/hamradio$1 [R=301,L]
276 # Relocation of derivatives pages
277 RewriteRule ^/misc/children-distros(?:\.html)?$ /derivatives/ [R=301,L]
278 RewriteRule ^/misc/children-distros(\.[^\.]+(?:\.html)?)$ /derivatives/index$1 [R=301,L]
281 <Macro common-www.d.o>
282 ServerName <%= @wwwdo_server_name %>
284 Use common-www.d.o-inner
288 <VirtualHost <%= @vhost_listen %> >
289 ErrorLog /var/log/apache2/www.debian.org-error.log
290 CustomLog /var/log/apache2/www.debian.org-access.log privacy
292 ServerName <%= @wwwdo_server_name %>
293 Redirect / https://<%= @wwwdo_server_name %>/
295 <VirtualHost <%= @vhost_listen_443 %> >
296 ErrorLog /var/log/apache2/www.debian.org-error.log
297 CustomLog /var/log/apache2/www.debian.org-access.log privacyssl
301 Use common-debian-service-ssl <%= @wwwdo_server_name %>
304 <% if scope.function_onion_global_service_hostname([@wwwdo_server_name]) -%>
305 <VirtualHost <%= @vhost_listen %> >
306 ErrorLog /var/log/apache2/www.debian.org-error.log
307 CustomLog /var/log/apache2/www.debian.org-access.log privacy
309 ServerName <%= scope.function_onion_global_service_hostname([@wwwdo_server_name]) %>
311 Use common-www.d.o-inner
316 <%- if @redirect_vhosts -%>
319 <VirtualHost <%= @vhost_listen %> >
320 Use common-www-other.d.o
322 ErrorLog /var/log/apache2/www-other.debian.org-error.log
323 CustomLog /var/log/apache2/www-other.debian.org-access.log privacy
325 Redirect permanent / https://www.debian.org/
327 <VirtualHost <%= @vhost_listen_443 %> >
328 Use common-www-other.d.o
330 CustomLog /var/log/apache2/www-other-access.log privacyssl
331 ErrorLog /var/log/apache2/www-other-error.log
333 Redirect permanent / https://www.debian.org/
335 Use common-debian-service-ssl debian.org
339 # vim:set syn=apache: