LoadModule negotiation_module modules/mod_negotiation.so <% mime = {} mimetypes = [] languages.each do |lang| mime[lang] = lang.gsub(/(\w+)-(\w+)/){$1 + '_' + $2.upcase} mimetypes.push(mime[lang]) end languages.each do |lang| -%> AddLanguage <%= lang %> .<%= mime[lang] %> <% end -%> LanguagePriority en ForceLanguagePriority Prefer Fallback AddDefaultCharset utf-8 RewriteEngine on RewriteCond %{QUERY_STRING} ^lang=(<%= mimetypes.join('|') %>)$ RewriteRule ^(?:/(?:<%= mimetypes.join('|') %>))?(/.*)$ /%1$1? [R=301] AliasMatch ^(?:/(?:<%= mimetypes.join('|') %>))(/.*)?$ /srv/web/spins.fedoraproject.org$1 Options MultiViews <% languages.each do |lang| -%> SetEnvIf Request_URI ^/<%= mime[lang] %>/ prefer-language=<%= lang %> <% end -%>