Как в NGINX проставить fastcgi_read_timeout для url с параметрами?

Доброго времени суток. Использую Опенкарт и эта CMS для админки генерит ссылки вида /admin/index.php?route=catalog/mod2&user_token=VV
Мне нужно сделать так, чтобы для ссылок где встречается "/mod2" было увеличено время выполнения программы директивой fastcgi_read_timeout.
Из-за того, что всё это хозяйство передается лишь в виде параметров, то не выходит верно задать Location. Если использовать условие if, то в него никак не положить fastcgi_read_timeout, получаю ошибку. Есть вообще какие-то варианты?
Просто один модуль на моем сайте должен иметь очень большое время на выполнение программы.
  • Вопрос задан
  • 88 просмотров
Решения вопроса 1
@dodo512
location = /admin/index.php {
    if ($arg_route ~ "/mod2") {
        rewrite ^ mod2 last;
    }

    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;

    fastcgi_read_timeout 60;
}

location = mod2 {
    rewrite ^ /admin/index.php break;

    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;

    fastcgi_read_timeout 1000;
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы