Назад | Перейти на главную страницу

Перенаправление языка Nginx: /de/test/test.php на /test/test.php?

Пытаюсь настроить Nginx на новом сервере. У меня есть несколько сценариев PHP (например, /test/test.php), и я хочу использовать эти сценарии «как есть» (язык по умолчанию, английский), а также с перенаправлением языка. Пример - когда запрашивается "/de/test/test.php",

  1. nginx записывает cookie (lang = de)
  2. и возвращает «/test/test.php» (без изменения URI, чтобы посетитель оставался на «/de/test/test.php»

Любая помощь приветствуется! Я уже потерял несколько ночей, борясь с этим, и я достаточно отчаялся, чтобы отменить новый сервер и вернуться к общему хостингу.

Спасибо!

Пожалуйста, дайте мне знать, работает ли это:

location ~ \.php$ {
    location ~* /(de|fr)/test/test\.php$ {
        set $lang $1;
        add_header  Cookie 'lang=$lang';
        rewrite (.*) /test/test.php last;
        break;
    }
    fastcgi_pass 127.0.0.1:9000;
    include fastcgi.conf;

    fastcgi_intercept_errors        on;
    error_page 404 /error/404.php;
}