Массированный rewrite или map ?

Dee Dee nginx-forum на forum.nginx.org
Вт Май 30 14:53:32 UTC 2017


Добрый день всем.

У меня возникла проблема на, казалось бы, простой задаче. У меня есть
порядка 300 штук редиректов в разделе блог вида:

/blog?page=post&blog=blog_EN&id=298  
/blog/topic1-theme-for-russian-speakers/	
/blog?page=post&blog=blog_RU&id=300   /blog/webinar-new-staff/

Как я понимаю, тут location это "blog" а далее пошли уже $args. 
У меня получилось сделать это через map вида:

map $args $link {
        "blog?page=post&blog=blog_EN&id=300" "/blog/webinar-new-staff/";
         ....
        default "/blog/";
}

и 

if ($args) {
                return 301 $scheme://$host$link;
}

Всё работает. Но map из трёхсот записей кажется мне громоздким. 
Есть ли какие-либо варианты решения задачи, которые более элегантны, чем мой
?

Заранее большое спасибо!

Posted at Nginx Forum: https://forum.nginx.org/read.php?21,274512,274512#msg-274512



Подробная информация о списке рассылки nginx-ru