WPML
Статус
Решено
Решено в
3.7.0

Обзор проблемы

Если Вы настроите WPML с опцией «Свой домен для каждого языка» на сервере nginx, Вы каждый раз будете перенаправляться на главную страницу на языке по умолчанию.

Похоже, проблема возникает из-за nginx, который возвращает некорректную переменную HTTP_HOST, когда REQUEST_URI пуст.

Обходное решение

Чтобы решить эту проблему, Вы можете создать отдельный блок сервера для каждого домена.

Например, Ваша типичная конфигурация nginx будет выглядеть примерно так:

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

Чтобы решить проблему, создайте блок сервера для каждого server_name следующим образом:

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;
    }
}

Ваша точная конфигурация может отличаться. Нужно просто продублировать блок сервера и задать другой server_name для каждого блока.

Наконец, Вам нужно перезапустить nginx и повторить попытку.

Все известные проблемы →