LINUX.ORG.RU
ФорумAdmin

nginx server_name $document_root

 ,


0

1

Добрый день! Помогите в паре вопросов?

1. Не могу сформировать server_name из имени хоста

   server_name ~^(?<root>.+?)\.hostname\.domain\.ru$;

   root /var/www/$root/public;
 

В результате хочу получить например имя_папки.имя_локальногохоста.domain.ru

на текущей VPS где:

$root = 1
echo ${HOSTNAME%%.*} = dev-test
должно получиться 1.dev-test.domain.com
 

Текущая конструкция не работает

2. Кто встречался с проблемой кеширования symlynk при использовании nginx+php-fpm Сейчас в конфиге прописано $document_root соответственно при использовании symlynk в root /var/www/$root/public, происходит кеширование (как я понял на уровне OPCACHE php-fpm).

Решение данной проблемы: 1. Перезапуск php-fpm который очистит кеш или как-то очищать кеш 2. Использование $realpath_root вместо $document_root

Вопрос есть какие либо тонкости в использовании $realpath_root вместо $document_root? Или простым языком можно просто заменить и использовать symlynk в root директории?



Последнее исправление: cetjs2 (всего исправлений: 1)

1. Если не ошибаюсь, в nginx переменная $root зарезервирована. Попробуй root изменить на domain. У меня точно такая же конструкция работает на ура.

iron ★★★★★
()
Ответ на: комментарий от iron

Вот как раз с переменной $root проблем нет, проблема с hostname

regsterr
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.