Page 1 of 1
Nginx + несколько версий php-fpm
Posted: Sun Feb 18, 2018 10:10 pm
by dmitry_stas
Здравствуйте.
Нужны одновременно php5.6 и php7. Если просто устанавливаю второй версию php5.6, то панель начинает ругаться
php-fpm pool doesn't exist
при создании/редактировании домена.
Есть способ сделать несколько версий php-fpm?
Re: Nginx + несколько версий php-fpm
Posted: Mon Feb 19, 2018 8:45 am
by imperio
Здравствуйте. Можете посмотреть эту тему, но вроде для php-fpm нельзя.
Из коробки php селектор планируется.
viewtopic.php?f=19&t=12737
Re: Nginx + несколько версий php-fpm
Posted: Mon Feb 19, 2018 9:39 am
by dmitry_stas
Спасибо, да, эту тему видел, но она как вы и сказали не для php-fmp. Проблема в том, что панелька например в domain.sh определяет каталог pool.d как
Code: Select all
pool=$(find -L /etc/php* -type d \( -name "pool.d" -o -name "*fpm.d" \))
и если несколько версий php, то она просто не понимает каталог куда писать, потому что их будет несколько. Пока сделал просто там жестко
а для php5 правлю потом конфиг сайта руками. Это конечно так себе велосипед, но другого пока не смог придумать... Шаблонами там не решить, нужно менять логику ядра, добавлять именно селект выбора php, и дальше уже с его значением работать...
А не подскажите ориентировочные сроки селектора из коробки?
Re: Nginx + несколько версий php-fpm
Posted: Mon Feb 19, 2018 11:21 am
by Deeryo
Re: Nginx + несколько версий php-fpm
Posted: Mon Feb 19, 2018 6:00 pm
by dmitry_stas
Привет, спасибо, это тоже читал.
Откровенно говоря я не могу понять как это у вас работает. В domain.sh prepare_web_backend есть определение папки pool.d
Code: Select all
pool=$(find -L /etc/php* -type d \( -name "pool.d" -o -name "*fpm.d" \))
if [ ! -e "$pool" ]; then
check_result $E_NOTEXIST "php-fpm pool doesn't exist"
fi
и как раз это уводит в ошибку в случае, если в папке /etc/php* есть несколько вложенных папок pool.d. А в случае когда установлено несколько php-fpm разных версий их там несколько. У вас есть папки /etc/php5/fpm/pool.d и /etc/php/7.0/fpm/pool.d? Если да, то может быть разница в версиях панели, какая у вас?
Re: Nginx + несколько версий php-fpm
Posted: Tue Feb 20, 2018 9:45 am
by Deeryo
dmitry_stas wrote: ↑Mon Feb 19, 2018 6:00 pm
Привет, спасибо, это тоже читал.
Да были папки /etc/php5/fpm/pool.d и /etc/php/7.0/fpm/pool.d. Делал давно в 2016 году, когда только появилась поддержка php-fpm в Весте. Возможно сейчас панель мешает делать такие шаблоны.
Re: Nginx + несколько версий php-fpm
Posted: Tue Feb 20, 2018 1:32 pm
by demian
если вы хотите поставить phpbrew, не знаю как оно под бубунту(имхо не является нормальной сборкой OS Linux) и дебиан, под Centos не надо оно кривое.
если под центос нужны несколько версий пыха... remi репозитории есть готовые сборки пакетов которые ставятся рядом. нужны только линки и шаблоны.
php 5.2 и 5.3 не соберутся на новой системе, используя адаптированный под centos 7, набором скриптов phpbrew, следовательно оно абсолютно бесполезно. да и реализация php-fpm для версий 5.2 и 5.3 некорректная, лучше пускать php-cgi или spawn-fcgi
ТС: под CentOS без проблем можно запустить пулы с разными версиями php-fpm, с небольшой правкой шаблонов.
ЗЫ: сам не использовал реализацию пулов реализованную в Vesta.
ЗЫЫ: мануал писать как скомпилировать 5.2 и 5.2 под центос не буду слишком много нюансов и правки исходников, желающим могу выложить скомпилированные версии под центос 7 x64.
Re: Nginx + несколько версий php-fpm
Posted: Sun Mar 04, 2018 6:27 pm
by VovaZ
А есть ли возможность добавить php-fpm 5.4 к уже установленному 5.6 на centOS 7 ?
И выбрать для конкретного домена версию 5.4 ?
Если это возможно, то в каких конфигах и что нужно править?
Заранее благодарю.
Re: Nginx + несколько версий php-fpm
Posted: Tue Mar 06, 2018 8:17 am
by demian
проверьте есть ли у вас необходимый репозиторий
Code: Select all
# yum repolist
---
remi-php54 Remi's PHP 5.4 RPM repository for Enterprise Linux 7 - x86_64
если репозитория нет
Code: Select all
yum-config-manager --enable remi-php54
Code: Select all
yum install php54-php-fpm [+ доп пакеты ]
конфиги пыха тут /opt/remi/php54/root/etc/
проверяете чтобы порты не пересекались, но лучше использовать сокеты.
Code: Select all
systemctl php54-php-fpm enable
systemctl php54-php-fpm start
скопируйте шаблоны с именем php-fpm -> php54-fpm
соответственно подправьте.
прикрепите шаблон к сайту.
ЗЫ: если у вас конфигурация nginx+php-fpm не могу сказать, где точно лежат шаблоны, ибо рукожОпы( ака 99% php програмеры) наровят редиректы устанавливать через .htaccess, пожтому не разу ставил панель в такой конфигурации