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

Динамически установить текущий домен в nginx с модулем perl

Я знаю, как устанавливать переменные и использовать подпрограммы со встроенным модулем perl nginx ВНУТРИ директивы «server», но мне нужно предварительно установить / перезаписать текущий домен.

Допустим, у нас есть домен вроде

 admin.foobar.website.com

Я хочу, чтобы запрос

 foobar.othersite.com

чтобы указать на первый адрес (очевидно, что website.com и othersite.com размещены на одном веб-сервере, на котором запущен nginx :)).

По причинам, которые я не могу здесь объяснить, я не могу использовать несколько выражений директивы server_name, я должен сделать это до блока server {}, с perl или как-то иначе.

server {
    server_name admin.foobar.website.com;
    location / {
        proxy_pass foobar.othersite.com;
    }
}

Ознакомьтесь с разработанным нами для этого решением на http://www.logicwreck.com/index.php/2012/09/11/dynamic-vhosts-for-nginx-with-database-storage-of-domain-and-alias-info/