Usar alias e try_files no mesmo bloco location pode causar problemas devido a um problema de longa data .
Além disso, seu comportamento padrão é enviar /en/ para /index.php , que é o URI errado e deve ser /en/index.php .
Tente:
location /en {
alias /home/sites/cakein/en/webroot;
index index.php
if (!-e $request_filename) {
rewrite ^ /en/index.php last;
}
...
}
EDITAR:
Uma forma possível de corrigir o redirecionamento /en to /en/ é adicionar outro bloco location :
location = /en {
rewrite ^ /en/ last;
}