# This is a collection of all the sites declared in
# the apache configuration for MediaWiki.
# This is a list of sites that are shared between installations.
# they can be erb inline templates, or just plain strings.
mediawiki::common_sites:
# Catchall for any domain-name not caught by virtualhosts below.
- name: nonexistent
priority: 0
source: mediawiki/apache/sites/nonexistent.conf
- name: wwwportals
priority: 1
template: mediawiki/apache/sites/wwwportals.conf.erb
# Specifically the top-level entries are the main containers,
# and their priority relative to one another is determined by the
# 'priority' parameter.
# Within each container, the declared virtual hosts will be set up
# according to the sequence in this yaml document.
mediawiki::sites:
# Non-wiki vhosts
- name: redirects
priority: 2
# Redirects are a bit forced here, basically we just use a dumb template that calls
# the compile_redirects
template: mediawiki/apache/sites/compile_redirects.erb
# Main sites
- name: main
priority: 3
defaults:
ensure: present
public_rewrites: true
declare_site: false
vhosts:
# The vhosts are ordered from top to bottom.
- name: mediawiki.org
params:
server_name: "www.mediawiki.org"
docroot: "/srv/mediawiki/docroot/mediawiki.org"
upload_rewrite:
rewrite_prefix: "mediawiki"
additional_rewrites:
early:
- "# Our FAQ"
- " RewriteRule ^/FAQ$ %%{}{ENV:RW_PROTO}://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ [R=301,L]"
- "# Archives of Extension:CodeReview"
- " RewriteRule ^/wiki/Special:Code(Review)?/(MediaWiki|pywikipedia)/r?([0-9]+)$ %%{}{ENV:RW_PROTO}://static-codereview.wikimedia.org/$2/$3.html [R=301,L]"
- " RewriteRule ^/wiki/Special:Code(Review)? %%{}{ENV:RW_PROTO}://static-codereview.wikimedia.org? [R=301,L]"
- " RewriteCond %%{}{QUERY_STRING} title=Special:Code(Review)?/(MediaWiki|pywikipedia)/r?([0-9]+)"
- " RewriteRule ^/w/index\\.php %%{}{ENV:RW_PROTO}://static-codereview.wikimedia.org/%2/%3.html? [R=301,L]"
- " RewriteCond %%{}{QUERY_STRING} title=Special:Code(Review)?"
- " RewriteRule ^/w/index\\.php %%{}{ENV:RW_PROTO}://static-codereview.wikimedia.org? [R=301,L]"
- "# EventLogging legacy /beacon/event: https://phabricator.wikimedia.org/T353817#9962622"
- " RewriteRule ^/beacon/event$ /beacon/event/index.php [L]"
late:
- "# T171807, T359643"
- " RewriteRule ^/ontology/ontology\\.owl$ /w/static.php [PT]"
- name: test.wikidata.org
params:
docroot: "/srv/mediawiki/docroot/wikidata.org"
wikibase_rewrites: true
additional_rewrites:
early: []
late: []
- name: wikidata.org
params:
server_name: www.wikidata.org
docroot: "/srv/mediawiki/docroot/wikidata.org"
wikibase_rewrites: true
additional_rewrites:
early: []
late: []
legacy_rewrites: false
- name: wiktionary.org
params:
server_name: "wiktionary"
server_aliases: ["*.wiktionary.org"]
docroot: "/srv/mediawiki/docroot/wiktionary.org"
short_urls: true
upload_rewrite:
domain_catchall: "wiktionary.org"
rewrite_prefix: "wiktionary"
variant_aliases:
&default_variants [
"sr",
"sr-ec",
"sr-el",
"zh",
"zh-hans",
"zh-hant",
"zh-cn",
"zh-hk",
"zh-sg",
"zh-tw",
]
- name: wikiquote.org
params:
server_name: "wikiquote"
server_aliases: ["*.wikiquote.org"]
docroot: "/srv/mediawiki/docroot/wikiquote.org"
short_urls: true
upload_rewrite:
domain_catchall: "wikiquote.org"
rewrite_prefix: "wikiquote"
legacy_rewrites: true
variant_aliases: *default_variants
# Donate wiki is here instead of remnants, because it needs to catch donate.wikipedia.org
# and the 'wikipedia' server's wildcard ServerAlias would otherwise apply
- name: donate.wikimedia.org
params:
docroot: "/srv/mediawiki/docroot/donate"
server_aliases: ["donate.wikipedia.org"]
canonical_name: "On"
https_only: true
legacy_rewrites: true
short_urls: true
additional_rewrites:
"early":
- "RewriteRule ^/$ https://donate.wikimedia.org/wiki/Special:FundraiserRedirector [R=302,L]"
- "# wikihole redirect can be removed 2026-03-01 - T357436"
- "RewriteRule ^/wikihole(/)?$ https://donate.wikimedia.org/?utm_medium=podcast&utm_campaign=wikihole&utm_source=wikihole [R=302,NE,L]"
"late": []
- name: thankyou.wikipedia.org
params:
docroot: "/srv/mediawiki/docroot/thankyou"
https_only: true
legacy_rewrites: false
short_urls: false
- name: wikitech.wikimedia.org
params:
docroot: "/srv/mediawiki/docroot/wikimedia.org"
short_urls: false # T341470
https_only: true
legacy_rewrites: false
# Compatibility with urls from the original Wikitech,
# that used wgActionPaths. – https://phabricator.wikimedia.org/T193848
additional_rewrites:
"early":
- "RewriteRule ^/view/(.*) /wiki/$1 [R=301]"
"late": []
- name: vote.wikimedia.org
params:
docroot: "/srv/mediawiki/docroot/wikimedia.org"
short_urls: true
https_only: true
legacy_rewrites: false
- name: abstract.wikipedia.org
params:
server_name: "abstract.wikipedia.org"
server_aliases: []
docroot: "/srv/mediawiki/docroot/wikipedia.org"
short_urls: true
canonical_name: "On"
legacy_rewrites: false
additional_rewrites:
"early": []
"late":
- " # /view support, for abstract.wikipedia.org"
- " RewriteRule ^/view/.*$ /w/index.php"
- name: wikipedia.org
params:
server_name: "wikipedia"
server_aliases: ["*.wikipedia.org"]
docroot: "/srv/mediawiki/docroot/wikipedia.org"
short_urls: true
upload_rewrite:
domain_catchall: "wikipedia.org"
rewrite_prefix: "wikipedia"
legacy_rewrites: true
variant_aliases:
[
"sr",
"sr-ec",
"sr-el",
"zh",
"zh-hans",
"zh-hant",
"zh-cn",
"zh-hk",
"zh-my",
"zh-mo",
"zh-sg",
"zh-tw",
]
additional_rewrites:
"early":
- " RewriteCond %%{}{QUERY_STRING} force_php74"
- " RewriteRule ^/wiki/Special:BlankPage - [E=backend:7.4]"
"late":
- " # moved wikistats off NFS"
- " RewriteRule ^/wikistats(/(.*$)|$) %%{}{ENV:RW_PROTO}://stats.wikimedia.org/$2 [R=302,L]"
- name: wikibooks.org
params:
server_name: "wikibooks"
server_aliases: ["*.wikibooks.org"]
docroot: "/srv/mediawiki/docroot/wikibooks.org"
short_urls: true
upload_rewrite:
domain_catchall: "wikibooks.org"
rewrite_prefix: "wikibooks"
legacy_rewrites: true
variant_aliases: *default_variants
- name: wikisource.org
params:
server_name: "wikisource"
server_aliases: ["*.wikisource.org"]
docroot: "/srv/mediawiki/docroot/wikisource.org"
short_urls: true
upload_rewrite:
domain_catchall: "wikisource.org"
rewrite_prefix: "wikisource"
legacy_rewrites: true
variant_aliases: *default_variants
- name: wikinews.org
params:
server_name: "wikinews"
server_aliases: ["*.wikinews.org"]
docroot: "/srv/mediawiki/docroot/wikinews.org"
short_urls: true
upload_rewrite:
"domain_catchall": "wikinews.org"
"rewrite_prefix": "wikinews"
legacy_rewrites: true
variant_aliases: *default_variants
- name: wikiversity.org
params:
server_name: "wikiversity"
server_aliases: ["*.wikiversity.org"]
docroot: "/srv/mediawiki/docroot/wikiversity.org"
legacy_rewrites: true
short_urls: true
upload_rewrite:
domain_catchall: "wikiversity.org"
rewrite_prefix: "wikiversity"
variant_aliases: *default_variants
- name: wikivoyage.org
params:
server_name: "wikivoyage"
server_aliases: ["*.wikivoyage.org"]
docroot: "/srv/mediawiki/docroot/wikivoyage.org"
variant_aliases:
[
"zh",
"zh-hans",
"zh-hant",
"zh-cn",
"zh-hk",
"zh-mo",
"zh-my",
"zh-sg",
"zh-tw",
]
legacy_rewrites: false
- name: wikifunctions.org
params:
server_name: www.wikifunctions.org
server_aliases: ["*.wikifunctions.org"]
docroot: "/srv/mediawiki/docroot/wikifunctions.org"
short_urls: true
canonical_name: "On"
legacy_rewrites: false
additional_rewrites:
"early": []
"late":
- " # /view support, for Wikifunctions.org"
- " RewriteRule ^/view/.*$ /w/index.php"
# other important wikis
- name: "remnant"
priority: 4
defaults:
ensure: present
short_urls: false
docroot: "/srv/mediawiki/docroot/wikimedia.org"
legacy_rewrites: true
declare_site: false
public_rewrites: true
vhosts:
- name: meta.wikimedia.org
params:
short_urls: true
upload_rewrite:
rewrite_prefix: "wikipedia/meta"
additional_rewrites:
early: []
late:
- " # Used for Firefox OS web application manifest living on meta.wikimedia.org"
- " AddType application/x-web-app-manifest+json .webapp"
- name: _wikisource.org
params:
docroot: "/srv/mediawiki/docroot/wikisource.org"
server_name: "wikisource.org"
upload_rewrite:
rewrite_prefix: "wikipedia/sources"
- name: commons.wikimedia.org
params:
upload_rewrite:
rewrite_prefix: "wikipedia/commons"
wikibase_rewrites: true
additional_rewrites:
early: []
late:
- " # /data/ path T163922"
- " RewriteRule ^/data/(.*)/(.*)$ %%{}{ENV:RW_PROTO}://commons.wikimedia.org/wiki/Special:PageData/$1/$2 [R=301,QSA]"
- name: grants.wikimedia.org
params: &private_wiki
legacy_rewrites: false
short_urls: true
https_only: true
- name: fdc.wikimedia.org
params: *private_wiki
- name: internal.wikimedia.org
params: *private_wiki
- name: board.wikimedia.org
params: *private_wiki
- name: boardgovcom.wikimedia.org
params: *private_wiki
- name: spcom.wikimedia.org
params: *private_wiki
- name: affcom.wikimedia.org
params: *private_wiki
- name: incubator.wikimedia.org
params:
short_urls: true
- name: species.wikimedia.org
params:
upload_rewrite:
rewrite_prefix: "wikipedia/species"
- name: searchcom.wikimedia.org
params: *private_wiki
- name: usability.wikimedia.org
params: {}
- name: strategy.wikimedia.org
params:
short_urls: true
- name: office.wikimedia.org
params: *private_wiki
- name: chair.wikimedia.org
params: *private_wiki
- name: advisory.wikimedia.org
params:
short_urls: true
- name: auditcom.wikimedia.org
params: *private_wiki
- name: quality.wikimedia.org
params:
short_urls: true
- name: vrt-wiki.wikimedia.org
params: *private_wiki
- name: exec.wikimedia.org
params: *private_wiki
- name: collab.wikimedia.org
params: *private_wiki
- name: outreach.wikimedia.org
params:
short_urls: true
- name: movementroles.wikimedia.org
params: *private_wiki
- name: checkuser.wikimedia.org
params: *private_wiki
- name: steward.wikimedia.org
params: *private_wiki
- name: ombuds.wikimedia.org
params: *private_wiki
- name: projectcom.wikimedia.org
params: *private_wiki
- name: techconduct.wikimedia.org
params: *private_wiki
- name: electcom.wikimedia.org
params: *private_wiki
- name: advisors.wikimedia.org
params: *private_wiki
- name: wikipedia-pl-sysop.wikimedia.org
params: *private_wiki
- name: wikipedia-it-arbcom.wikimedia.org
params: *private_wiki
- name: wikipedia-zh-arbcom.wikimedia.org
params: *private_wiki
- name: u4c.wikimedia.org
params: *private_wiki
- name: wikipedia-pl-arbcom.wikimedia.org
params: *private_wiki
- name: test-commons.wikimedia.org
params:
upload_rewrite:
rewrite_prefix: "wikipedia/testcommons"
wikibase_rewrites: true
additional_rewrites:
early: []
late:
- " # /data/ path T163922"
- " RewriteRule ^/data/(.*)/(.*)$ %%{}{ENV:RW_PROTO}://test-commons.wikimedia.org/wiki/Special:PageData/$1/$2 [R=301,QSA]"
# Old secure redirects. These happen *after* the main and remnant containers.
- name: secure.wikimedia
source: mediawiki/apache/sites/secure.wikimedia.conf
priority: 6
# Wikimania related wikis
- name: wikimania
priority: 7
defaults:
ensure: present
docroot: "/srv/mediawiki/docroot/wikimedia.org"
declare_site: false
legacy_rewrites: false
vhosts:
- name: wikimania
params:
server_aliases:
[
"wikimania.wikimedia.org",
"wikimania2005.wikimedia.org",
"wikimania2006.wikimedia.org",
"wikimania2007.wikimedia.org",
"wikimania2008.wikimedia.org",
"wikimania2009.wikimedia.org",
"wikimania2010.wikimedia.org",
"wikimania2011.wikimedia.org",
"wikimania2012.wikimedia.org",
"wikimania2013.wikimedia.org",
"wikimania2014.wikimedia.org",
"wikimania2015.wikimedia.org",
"wikimania2016.wikimedia.org",
"wikimania2017.wikimedia.org",
"wikimania2018.wikimedia.org",
]
upload_rewrite:
domain_catchall: "wikimedia.org"
rewrite_prefix: "wikipedia"
- name: wikimaniateam.wikimedia.org
params:
https_only: true
short_urls: true
- name: foundation
priority: 8
defaults: {}
vhosts:
- name: _foundation
params:
ensure: present
server_name: foundation.wikimedia.org
server_aliases:
- wikimediafoundation.org
canonical_name: "On"
docroot: "/srv/mediawiki/docroot/wikimediafoundation.org"
declare_site: false
additional_rewrites:
early:
[
"# extract.php pages redirected to new pages",
' RewriteRule ^/fundraising(\.html)?$ %%{}{ENV:RW_PROTO}://%%{}{SERVER_NAME}/wiki/Fundraising [R=301,L]',
' RewriteRule ^/index(\.html)?$ %%{}{ENV:RW_PROTO}://%%{}{SERVER_NAME}/wiki/Home [R=301,L]',
' RewriteRule ^/GNU_FDL(\.html)?$ %%{}{ENV:RW_PROTO}://%%{}{SERVER_NAME}/wiki/GNU_Free_Documentation_License [R=301,L]',
" # Obsolete PDF redirected to current wiki page",
' RewriteRule ^/bylaws\.pdf %%{}{ENV:RW_PROTO}://%%{}{SERVER_NAME}/wiki/Wikimedia_Foundation_bylaws [R,L]',
" RewriteRule ^/wiki/Donate$ https://donate.wikimedia.org/ [R=301,L]",
]
late: []
- name: wikimedia
priority: 9
defaults:
ensure: present
docroot: "/srv/mediawiki/docroot/wikimedia.org"
legacy_rewrites: false
declare_site: false
short_urls: true
vhosts:
- name: wikimedia-chapter
params:
server_aliases:
[
"ae.wikimedia.org",
"am.wikimedia.org",
"ar.wikimedia.org",
"az.wikimedia.org",
"bd.wikimedia.org",
"be.wikimedia.org",
"br.wikimedia.org",
"ca.wikimedia.org",
"cn.wikimedia.org",
"co.wikimedia.org",
"dk.wikimedia.org",
"ec.wikimedia.org",
"ee.wikimedia.org",
"fi.wikimedia.org",
"ge.wikimedia.org",
"gr.wikimedia.org",
"hi.wikimedia.org",
"id.wikimedia.org",
"id-internal.wikimedia.org",
"il.wikimedia.org",
"mai.wikimedia.org",
"mk.wikimedia.org",
"mx.wikimedia.org",
"ng.wikimedia.org",
"nl.wikimedia.org",
"no.wikimedia.org",
"noboard-chapters.wikimedia.org",
"nyc.wikimedia.org",
"nz.wikimedia.org",
"pa-us.wikimedia.org",
"pl.wikimedia.org",
"pt.wikimedia.org",
"punjabi.wikimedia.org",
"romd.wikimedia.org",
"rs.wikimedia.org",
"ru.wikimedia.org",
"se.wikimedia.org",
"th.wikimedia.org",
"tr.wikimedia.org",
"ua.wikimedia.org",
"us.wikimedia.org",
"uz.wikimedia.org",
"ve.wikimedia.org",
"wb.wikimedia.org",
"za.wikimedia.org",
]
legacy_rewrites: true
upload_rewrite:
domain_catchall: "wikimedia.org"
rewrite_prefix: "wikimedia.org"
additional_rewrites:
early:
[
"# www. prefix",
'RewriteCond %%{}{HTTP_HOST} ^www.([a-z\-]+)\.wikimedia\.org$',
"RewriteRule ^(.*)$ %%{}{ENV:RW_PROTO}://%1.wikimedia.org$1 [R=301,L]",
]
late: []
- name: login.wikimedia.org
params: {}
- name: transitionteam.wikimedia.org
params:
https_only: true
- name: iegcom.wikimedia.org
params:
https_only: true
- name: legalteam.wikimedia.org
params:
https_only: true
- name: fixcopyright.wikimedia.org
params:
https_only: true
- name: api.wikimedia.org
params:
https_only: true
# not a real wiki, but an alternative way to reach other wikis for auth cookie sharing
# other than a path prefix, needs identical handling to proper wiki domains
- name: auth
priority: 9
defaults:
ensure: present
docroot: "/srv/mediawiki/docroot/auth"
legacy_rewrites: false
# robots.txt, favicon.ico are static files in the docroot instead
public_rewrites: false
vhosts:
- name: auth.wikimedia.org
params:
additional_rewrites:
early:
- " # Redirect requests for the root of the domain to something nice"
- " RewriteRule ^/$ https://www.wikimedia.org [R=302,L]"
- " # Serve static files before the below RewriteRule can match (T385520)"
- " RewriteRule ^/\\.well-known/ - [L]"
- " RewriteRule ^/static/ - [L]"
- " # T365162 strip the prefix used to identify the wiki"
- " # (T380551#10368927 don't mess up the 404 error page)"
- " RewriteCond %%{}{REQUEST_URI} !=/w/404.html"
- " RewriteRule ^/([^/]*)/(.*)$ /$2"
- " # Primary wiki redirector: [this applies after the prefix is stripped above]"
- " RewriteRule ^/$ /w/index.php"
- " # Custom error page (T383952)"
- " ErrorDocument 404 /404.html"
late: []
https_only: true
# www.wikimedia.org also catches *.wikimedia.org
# so it needs to come last.
# (keep in sync with hieradata/cloud/eqiad1/deployment-prep/common.yaml)
- name: www.wikimedia.org
template: mediawiki/apache/sites/included/www.wikimedia.org.conf.erb
priority: 10