WPML
Status
Resolvido
Resolvido em
3.7.0

Visão geral do problema

Se você configurar o WPML com um domínio diferente por idioma em um servidor nginx, você será sempre redirecionado para a página inicial no idioma padrão.

O problema parece vir do nginx, que retorna uma variável HTTP_HOST incorreta quando REQUEST_URI está vazia.

Solução alternativa

Para resolver isso, você pode criar um bloco de servidor separado para cada domínio.

Por exemplo, sua configuração típica do nginx será parecida com esta:

server {
    server_name example.com example.es;
    root /var/www/html;
    index index.php;
    location / {
        try_files $uri $uri/ /index.php?q=$uri&$args;
    }
}

Para resolver isso, crie um bloco de servidor para cada server_name, desta forma:

server {
    server_name example.com;
    root /var/www/html;
    index index.php;
    location / {
        try_files $uri $uri/ /index.php?q=$uri&$args;
    }
}

server {
    server_name example.es;
    root /var/www/html;
    index index.php;
    location / {
        try_files $uri $uri/ /index.php?q=$uri&$args;
    }
}

Sua configuração exata pode variar. É apenas uma questão de duplicar o bloco de servidor e definir um server_name diferente para cada bloco.

Por fim, você precisa reiniciar o nginx e tentar novamente.

Todos os problemas conhecidos →