Typemaps

Merged username-removed-25042 requested to merge pserwylo/fdroid-website:typemaps into master

MultiViews have been shown to have particular security vulnerabilities. Instead of figuring out if they apply in our case or not, lets just write out type maps and be done with it.

Here are my test sites, similar to !70 (merged):

The ./tools/prepare-multi-lang.sh now outputs the following at the end:

Finished preparing site for i18n using Apache2 and mod_negotiation.
Ensure that you have the following in your Apache2 Server/VirtualHost config, where "/var/www/html" is replaced with your webroot:

    <Files *.html>
            SetHandler type-map
    </Files>

    # virtualize the language sub"directories"
    AliasMatch ^(?:/\w\w/)?(.*)?\$ /var/www/html/\$1

    # Tell mod_negotiation which language to prefer
    SetEnvIf Request_URI ^/(\w\w)/ prefer-language=\$1

And this has also been added to the docs (though the formatting is off, so I'll fix that when I get some time).