Esta pergunta se refere à publicação do Ubuntu Serverguide em help.ubuntu.com. Para o ciclo 20.04 LTS, haverá (OK pode) mudanças significativas no fluxo de trabalho do código-fonte para o Ubuntu Serverguide. Atualmente, as traduções não estão sendo consideradas para essa migração. Nosso melhor feedback foi que os administradores de servidor preferem o inglês, mesmo que não seja seu primeiro idioma. Antes que a decisão se torne irreversÃvel, queremos testá-la fazendo o próximo lançamento pontual do Ubuntu Serverguide 18.04 apenas em inglês dos EUA. Tudo está pronto, exceto por um problema:
Sabemos com certeza que existem muitos links, favoritos, etc. com a extensão de idioma. Exemplo:
https://help.ubuntu.com/lts/serverguide/networking.html.en-CA
E queremos que esse cenário retorne esta página:
https://help.ubuntu.com/lts/serverguide/networking.html
porque as versões especÃficas do idioma não existirão mais, mas retornar um erro 404 Not Found é indesejável.
A versão atual de um arquivo .htaccess, com tentativas anteriores comentadas, é:
# unable to make below method work.
#RedirectMatch permanent ^(*\.html)\.*$ $1
#
# enable rewriting
RewriteEngine on
#RewriteRule ^(*\.html)\.*$ $1 [R=301, L]
#RewriteRule ^(*\.html)\.*$ $1
RewriteRule ^(*\.html)\.*$ $1 [PT]
#RewriteRule ^(*.html).*$ $1
Resultando em:
500 Internal Server Error
para o cliente, e isso nos logs do servidor de teste:
[Thu Jun 20 11:57:07.647838 2019] [core:alert] [pid 16079] [client 192.168.111.101:62992] /home/doug/public_html/linux/ubuntu-docs/help.ubuntu.com/dev/lts/serverguide/.htaccess: RewriteRule: cannot compile regular expression '^(*\\.html)\\.*$', referer: http://my-test-website/~doug/linux/ubuntu-docs/help.ubuntu.com/dev/index.html
[Thu Jun 20 14:19:27.360334 2019] [core:alert] [pid 16079] [client 192.168.111.101:63908] /home/doug/public_html/linux/ubuntu-docs/help.ubuntu.com/dev/lts/serverguide/.htaccess: RewriteRule: cannot compile regular expression '^(*\\.html)\\.*$', referer: http://my-test-website/~doug/linux/ubuntu-docs/help.ubuntu.com/dev/index.html
Observe que as tentativas atuais estão com um curinga para a extensão do idioma. Se isso não for possÃvel, a lista de idiomas é:
ace ar ast be bg bn bs ca cs da de el en en_AU en_CA en_GB eo es et eu fa fi fr gl gu he hr hu id is it ja km ko ku lo lt lv mk ms nb nl oc pl ps pt_BR pt ro ru sk sl sq sr sv th tl tr ug uk ur vi zh_CN zh_TW
Alguém pode ajudar com isso?
Isso reescreve
/foobar.html.anything
em/foobar.html
, e parece fazer o que você deseja.Se for para ser permanente, você provavelmente deve enviar um 301: