Re: debian.org Language Subdomain Proposal

Paul Wise <[email protected]>
Newsgroups gmane.linux.debian.devel.www
Message-ID <CAKTje6EdDyfPwXdUc93vUXujL_3OHE+nFFF1aLZrWLNO9VwQnQ@mail.gmail.com>
On Tue, Jul 30, 2019 at 1:47 PM Paul Wise wrote:

> Passing cookies for this could work easily, but discussing it a while
> ago we decided there could be GDPR issues. I seem to remember I worked
> out that via some Apache rewrite rules it would be possible to use the
> names of top-level directories to influence content negotiation, but I
> neglected to take notes about how.

It looks like we just need to set the prefer-language Apache variable
and it looks like there is a way to do that based on the domain,
subdirectory, cookies or almost anything else we could think of.

https://httpd.apache.org/docs/current/content-negotiation.html#exceptions
https://httpd.apache.org/docs/2.4/mod/mod_setenvif.html#setenvif
https://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewriterule

So, assuming the web server filesystem has no directories matching any
language code, something like this should do the job (untested):

RewriteEngine  on
RewriteRule "^/[a-z][a-z](/.*)"  "/$1" [passthrough]
RewriteRule "^/[a-z][a-z]-[a-z][a-z](/.*)"  "/$1" [passthrough]
SetEnvIf Request_URI "^/([a-z][a-z])/" prefer-language=$1
SetEnvIf Request_URI "^/([a-z][a-z]-[a-z][a-z])/" prefer-language=$1

I'll have a look at testing this when I get time, then we can decide
what method we want to use for sticky links and update the translation
selection mechanism to use it.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.