fsfe-website/.htaccess

227 lines
11 KiB
ApacheConf

# This file handles all redirects/rewrites for fsfe.org
# Some of the rewrites are for shorter URLs, most for support of
# changed URLs or deleted pages.
#
# Some redirect definitions cannot be handled by this file and therefore
# are places directly in the webserver configuration:
# https://git.fsfe.org/fsfe-system-hackers/webserver-bunsen/src/branch/master/files/apache2-sites/fsfe.org.conf
#
# Please do not create other .htaccess files in this project! It would
# overwrite rewrites concerning its directories in this file and
# and thereby create a lot of confusion.
RewriteEngine On
# Favicon
RewriteRule ^favicon.ico /graphics/fsfe.ico [R=301,L]
RewriteRule ^graphics/fsfeurope.ico /graphics/fsfe.ico [R=301,L]
# =============================================================================
# SHORT URLS
# =============================================================================
# Redirect
RewriteRule ^translate/?$ /contribute/translators/ [R=301,L]
# Promotion material order
RewriteRule ^promo(/.*)? /contribute/spreadtheword$1 [R=301,L]
# Convince your friends
RewriteRule ^(cyf|convince)/?$ https://wiki.fsfe.org/ConvinceYourFriends [R=301,L]
# Summit 2016
RewriteRule ^summit16(/.*)?$ /community/events/2016/summit/frontpage$1 [R=301,L]
# 15 years of FSFE
RewriteRule ^15(/.*)?$ /activities/15years$1 [R=301,L]
# Podcast
RewriteRule ^podcast(/.*)? /news/podcast.html [R=301,L]
# EU policies wiki page, e.g. linked from the PMPC brochure
RewriteRule ^fs-policies/?$ https://wiki.fsfe.org/Activities/EU_Policies_overview_FS [R=301,L]
# Share buttons
RewriteRule ^share/?$ /cgi-bin/share.php [NC,L]
# Link to PMPC event, can be changed afterwards
RewriteRule ^publiccode/?$ https://registration.fsfe.org/Digitale-Verwaltung-2020 [R=301,L]
# Others
RewriteRule ^standards(.*) /freesoftware/standards$1 [R=301,L]
RewriteRule ^education(.*) /freesoftware/education$1 [R=301,L]
# =============================================================================
# CAMPAIGN/TOPIC-SPECIFIC REDIRECTS
# =============================================================================
# Podcast
RewriteRule ^news/podcast/?$ /news/podcast.html [R=301,L]
RewriteRule ^news/podcast.rss$ /news/podcast.en.rss [L,R=301]
RewriteRule ^news/podcast-opus.rss$ /news/podcast-opus.en.rss [L,R=301]
# ILoveFS
# TODO each year: update links for next two lines
RewriteRule ^activities/ilovefs(/?$|/[^/]*.html$) /activities/ilovefs/2020$1 [PT,L]
RewriteRule ^activities/ilovefs/latest-report.*$ /news/2019/news-20190329-01.html [R=301,L]
RewriteRule ^activities/ilovefs/ilovefs(.*)html$ /activities/ilovefs/index$1html [R=301,L]
# Help section
RewriteRule ^help/?$ /contribute/ [R=301,L]
RewriteRule ^help/index(.*) /contribute/contribute$1 [R=301,L]
RewriteRule ^help/help(.*) /contribute/contribute$1 [R=301,L]
RewriteRule ^help/web\.(.*) /contribute/web/web.$1 [R=301,L]
RewriteRule ^help/(.*) /donate/$1 [R=301,L]
# =============================================================================
# MOVED PAGES
# =============================================================================
# News
RewriteRule ^news/fsfe-fr-channel.fr.xml /news/news.fr.rss [R=301,L]
RewriteRule ^2009/?$ /news/2009/nyr.html [R=301,L]
RewriteRule ^news/2016/news-20160629-01(.*)$ /news/2016/news-20160630-01$1 [R=301,L]
RewriteRule ^about/reports/es-2003(.*)$ /news/2003/news-20030602-01$1 [R=301,L]
RewriteRule ^about/reports/es-2005(.*)$ /news/2005/news-20050507-01$1 [R=301,L]
RewriteRule ^about/reports/es-2007(.*)$ /news/2007/news-20070630-01$1 [R=301,L]
RewriteRule ^about/reports/es-2009(.*)$ /news/2009/news-20090620-01$1 [R=301,L]
RewriteRule ^freesoftware/enterprise/freesoftwarecompany(.*)$ /news/2018/news-20181202-01$1 [R=301,L]
RewriteRule ^freesoftware/enterprise/chargeofitsbrand(.*)$ /news/2009/news-20090604-01$1 [R=301,L]
# Old/moved people/staff profiles
RewriteRule ^about/(bako|polvani|tuke|maffulli|jakobs|oriordan|oberg|coughlan|weiden|nanda)(/.*)?$ /about/team [R=301,L]
RewriteRule ^about/(albers|gerloff|greve|kirschner|ku|lasota|mehl|repentinus|roy|sander)(/.*)?$ /about/people/$1$2 [R=301,L]
RewriteRule ^people/greve(/.*)?$ /about/people/greve [R=301,L]
RewriteRule ^about/people/?(people.*)?$ /about/team.html [R=301,L]
# /en/.*
RewriteRule ^en/layout/set/rss/content/view/full/5116 https://blogs.fsfe.org/ciaran/?feed=rss2 [R=301,L]
RewriteRule ^en/layout/set/rss/content/view/full/5009 https://blogs.fsfe.org/maffulli/?feed=rss2 [R=301,L]
RewriteRule ^en/layout/set/rss/content/view/full/4972 https://blogs.fsfe.org/gerloff/?feed=rss2 [R=301,L]
RewriteRule ^en/layout/set/rss/content/view/full/5971 https://blogs.fsfe.org/jj/?feed=rss2 [R=301,L]
RewriteRule ^en/layout/set/rss/content/view/full/6128 https://blogs.fsfe.org/jj/?feed=rss2 [R=301,L]
RewriteRule ^en/layout/set/rss/content/view/full/4974 https://blogs.fsfe.org/greve/?feed=rss2 [R=301,L]
RewriteRule ^en/news /news/ [R=301,L]
RewriteRule ^en/rss/feed/news.xml /news/news.en.rss [R=301,L]
RewriteRule ^en/rss/feed/events.xml /events/events.en.rss [R=301,L]
RewriteRule ^en/content/download/17665/125518/file/gnupg-ccid.rules https://wiki.fsfe.org/Card_howtos/Card_reader_setup_(udev)?action=AttachFile&do=view&target=gnupg-ccid.rules [R=301,L]
RewriteRule ^en/content/download/15872/77909/file/gnupg-ccid https://wiki.fsfe.org/Card_howtos/Card_reader_setup_(udev)?action=AttachFile&do=view&target=gnupg-ccid [R=301,L]
# Tags
RewriteRule ^tags/tagged(\...)(\.html)?$ /tags/tags$1.html [R=301,L]
# Documents
RewriteRule ^documents/freesoftware(.*) /freesoftware/freesoftware.html [R=301,L]
RewriteRule ^documents(/.*)?$ / [R=301,L]
# Old campaigns and projects pages
RewriteRule ^projects(/.*)?$ /activities/activities.html [R=301,L]
RewriteRule ^campaigns(/.*)?$ /activities$1 [R=301,L]
# /freesoftware, /about/basics and similar "basic" texts
RewriteRule ^about/basics/?(.*)$ /freesoftware/ [R=301,L]
RewriteRule ^freesoftware/basics/(comparison|gnuproject)(.*)$ /freesoftware/$1$2 [R=301,L]
RewriteRule ^freesoftware/basics/legal/?(.*)$ /freesoftware/legal/ [R=301,L]
RewriteRule ^freesoftware/society/?(.*)$ /freesoftware/democracy.html [R=301,L]
RewriteRule ^freesoftware/legal/flashingdevices(.*)$ /activities/android/flashingdevices$1 [R=301,L]
RewriteRule ^freesoftware/public-sector/german-foreign-office-comment(.*)$ https://k7r.eu/buchartikel-freie-software-im-auswartigen-amt-erst-hu-dann-hott/ [R=301,L]
RewriteRule ^freesoftware/(basics|enterprise|support|third-sector|transcripts)/?(.*)$ /freesoftware/ [R=301,L]
# /activities/ftf/
RewriteRule ^activities/ftf/avm-gpl-violation(.*)$ /activities/avm-gpl-violation/ [R=301,L]
RewriteRule ^activities/ftf/legal-conference(.*)$ /activities/ln/llw.html [R=301,L]
RewriteRule ^activities/ftf/licence-questions(.*)$ /activities/licence-questions/ [R=301,L]
RewriteRule ^activities/ftf/ln(.*)$ /activities/ln/ [R=301,L]
RewriteRule ^activities/ftf/ngi0(.*)$ /activities/ngi/ [R=301,L]
RewriteRule ^activities/ftf/?(.*)$ /activities/legal.html [R=301,L]
# /activities
RewriteRule ^activities/askyourcandidates(.*) /activities/elections/askyourcandidates$1 [R=301,L]
RewriteRule ^activities/btw09(.*) /activities/elections/askyourcandidates/200909-germany-bundestagswahl.html [R=301,L]
RewriteRule ^activities/education/tgs(.*) /activities/tgs$1 [R=301,L]
RewriteRule ^activities/education(.*) /freesoftware/education$1 [R=301,L]
RewriteRule ^activities/os/msooxml(.*) /acticities/msooxml/msooxml$1 [R=301,L]
RewriteRule ^activities/os(.*) /freesoftware/standards$1 [R=301,L]
RewriteRule ^activities/procurement(.*) /freesoftware/procurement$1 [R=301,L]
# deleted activities
RewriteRule ^(activities/)?nocloud(/.*)? /activities/activities.html [R=301,L]
RewriteRule ^activities/policy/.* /activities/policy.html [R=301,L]
RewriteRule ^activities/theydontwantyouto(/.*)? /activities/activities.html [R=301,L]
RewriteRule ^activities/un(/.*)? /activities/policy.html [R=301,L]
# Norwegian language: Bokmal language code
RewriteRule ^(.*)\.no.html /$1.nb.html [R=301,L]
RewriteRule ^(.*)\.no.rss /$1.nb.rss [R=301,L]
# Other pages
RewriteRule ^about/(history|reports)/?(.*)$ /about/ [R=301,L]
RewriteRule ^about/members(/.*)?$ /about/team$1 [R=301,L]
RewriteRule ^about/community(/.*)?$ /contact/community.html [R=301,L]
RewriteRule ^about/self-conception(/.*)?$ /about/principles$1 [R=301,L]
RewriteRule ^contact/press(.*) /press/press$1 [R=301,L]
RewriteRule ^associates/about(.*) /associates/associates$1 [R=301,L]
RewriteRule ^contribute/traineeship(.*) /contribute/internship$1 [R=301,L]
RewriteRule ^contribute/donate(.*) /donate$1 [R=301,L]
RewriteRule ^contact/local(.*) /contact/contact$1 [R=301,L]
RewriteRule ^about/localteams(.*) /contact/contact$1 [R=301,L]
RewriteRule ^fr/(news|events)\.(..\.)?html /fr/fr.$2html [R=301,L]
RewriteRule ^activities/wsis/cs-benchmarks\.(.*)$ /activities/wsis/cs-benchmarks-03-11-14.$1 [R=301,L]
RewriteRule ^contribute/booth(.*) https://wiki.fsfe.org/KnowHow/Groups/OrganizeABooth [R=301,L]
RewriteRule ^work(\...)?(\.html)?$ /about/ourwork$1.html [R=301,L]
# =============================================================================
# FELLOWSHIP AND DONATIONS
# =============================================================================
# Payment
RewriteRule ^fellowship/paypal(/.*)?$ https://my.fsfe.org/payonline$1 [R=301,L]
RewriteRule ^fellowship/payonline(/.*)?$ https://my.fsfe.org/payonline$1 [R=301,L]
RewriteRule ^fellowship/payonline/([^/]*)/(.*) https://my.fsfe.org/payonline/$2 [R=301,L]
RewriteRule ^fellowship/login(/.*)?$ https://my.fsfe.org/ [R=301,L]
RewriteRule ^fellowship/join(/.*)?$ https://my.fsfe.org/support [R=301,L]
RewriteRule ^fellowship/donate(/.*)?$ https://my.fsfe.org/donate [R=301,L]
RewriteRule ^fellowship/payment(/.*)?$ /donate/payment$1 [R=301,L]
RewriteRule ^donate/payonline(/.*)?$ https://my.fsfe.org/payonline$1 [R=301,L]
RewriteRule ^order/payonline.(.*)/(.*) /cgi-bin/order-payonline.pl?language=$1&reference=$2
# Old /fellowship pages
RewriteRule ^fellowship/card(/.*)?$ https://wiki.fsfe.org/TechDocs/CardHowtos [R=301,L]
RewriteRule ^fellowship/communicate(/.*)?$ /contact/community.html [R=301,L]
RewriteRule ^fellowship/contact(/.*)?$ /contact/contact.html [R=301,L]
RewriteRule ^fellowship/events(.*) /events$1 [R=301,L]
RewriteRule ^fellowship/faq(/.*)?$ https://wiki.fsfe.org/KnowHow/FSFELife/FAQ [R=301,L]
RewriteRule ^fellowship/graphics/people(/.*)?$ - [L]
RewriteRule ^fellowship/groups(/.*)?$ https://wiki.fsfe.org/LocalGroups [R=301,L]
RewriteRule ^fellowship/new-group(/.*)?$ https://wiki.fsfe.org/KnowHow/Groups/CoordinatorsHandbook [R=301,L]
# Catch the rest
RewriteRule ^fellowship / [R=301,L]
# Donate
RewriteRule ^donate(/?|/donate/?|/donate\..*|/donate-.*|/index.*)$ https://my.fsfe.org/donate [R=301,L]
RewriteRule ^donate(/onetime-donation.*|/spenden.*|/paypal.*)$ https://my.fsfe.org/donate [R=301,L]
# Join/Support
RewriteRule ^support(er)?(/.*)?$ https://my.fsfe.org/donate [R=301,L]
RewriteRule ^join(/.*)?$ https://my.fsfe.org/donate [R=301,L]
RewriteRule ^login(/.*)?$ https://my.fsfe.org/ [R=301,L]
# =============================================================================
# MERCHANDISE / PROMO
# =============================================================================
# Old pages
RewriteRule ^about/printable(/.*)?$ /contribute/spreadtheword.html [R=301,L]
# =============================================================================
# MISCELLANEOUS
# =============================================================================
# Forbid access to these folders
RewriteRule ^(tools|build)(/.*)?$ - [F,L]