Php alt или native

IonCube Loader 10, ea-php and alt-php confusion

You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an alternative browser.

rangka_kacang

Active Member

I’m using CloudLinux 7.5 + cPanel 72.0.7. I got really confused because under:

WHM > Software > MultiPHP Manager > System PHP Version

If I select this as ea-php72, my IonCube Loader will work.

# php -v ea-php-cli Copyright 2017 cPanel, Inc. PHP 7.2.6 (cli) (built: Jun 21 2018 16:32:10) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with the ionCube PHP Loader (enabled) + Intrusion Protection from ioncube24.com (unconfigured) v10.2.0, Copyright (c) 2002-2018, by ionCube Ltd. with Zend OPcache v7.2.6, Copyright (c) 1999-2018, by Zend Technologies

but if I change it back to alt-php72, the IonCube Loader will no longer work.

# php -v ea-php-cli Copyright 2017 cPanel, Inc. PHP 7.2.7 (cli) (built: Jul 4 2018 08:15:29) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

However, under cPanel > Software > Select PHP Version, the Current PHP version is set to 7.2 and IonCube Loader is enabled there. I’m getting really confused. Why is my cPanel using alt-php72 but my «php -v» is showing 7.2.6 (from the ea-php72).

I just wanted to set the alt-php72 as the default System PHP Version and make the IonCube Loader 10 to work as well. How and where do set the php.ini? Enabling or disabling the checkbox for IonCube Loader at Server Configuration > Tweak Settings will not do any difference (because when I use alt-php72 as the default system PHP version, nothing will happen but if I use ea-php72 the tweak settings will work. Are you confuse yet? I know, me too. This whole ALT and EA clash is making my life a bit harder. All I want is a simple procedure to make all my future accounts to use alt-php72 by default with IonCube Loader enabled and they can use the PHP selector in cPanel interface (I have already disable the MultiPHP to avoid further confusion).

Читайте также:  Extends function in java

Under WHM > Software > MultiPHP Manager, my domain is currently set using alt-php72 but that’s weird why the IonCube Loader will not work if I use alt-php72 as the system default version? I need to manually set all other accounts to use alt-php72 to get the IonCube loader to work (or at least use use the 7.2.7 from ALT not 7.2.6 from EA).

At this point, I’m not sure if I should post this issue to CloudLinux’s forum, or under EasyApache category, or CloudLinux category? As you can see, I’d like to completely disable EasyApache MultiPHP and use CloudLinux’s PHP Selector only but there’s no easy way to do this, they both are working concurrently (just the matter of choosing them in the settings out of personal preferences) and the settings are too much of a burden for a newbie like me to handle, they are everywhere from LVE side, Tweak side, manual php.ini side, cPanel MultiPHP side, PHP Selector side, how how how?

For reference: I recently run this command yum update alt-php72 —enablerepo=cloudlinux-updates-testing to see if I can get that IonCube Loader 10 to work if I choose alt-php72 as the default system php version but still no luck. Apart from that, I’ve already run yum install ea-php70-php-ioncube10 and yum install ea-php71-php-ioncube10 but there’s isnt any yum install ea-php72-php-ioncube10 in the repo.

Источник

php linux. Cмена нативной версии.

В качестве примера возьмём сервер на CentOS 7, где установлен родной PHP:

# php -v PHP 5.4.16 (cli) (built: May 12 2016 13:45:17) Copyright (c) 1997-2013 The PHP Group Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies with the ionCube PHP Loader (enabled) + Intrusion Protection from ioncube24.com (unconfigured) v5.0.12, Copyright (c) 2002-2015, by ionCube Ltd.

Также на сервере установлен наш Plesk с парой своих сборок PHP:

# rpm -qa | grep plesk-php.*-release plesk-php56-release-5.6.22-centos7.16052711.x86_64 plesk-php70-release-7.0.7-centos7.16052710.x86_64

Допустим, мы хотим переключить систему на использование PHP 5.6 по умолчанию (переключать глобально PHP с версии 5.4 на 7 как-то сс… страшно — чему-то в системе может поплохеть от такого). Бинарь PHP 5.6 лежит у нас тут:

# /opt/plesk/php/5.6/bin/php -v PHP 5.6.22 (cli) (built: May 27 2016 11:45:28) Copyright (c) 1997-2016 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies with the ionCube PHP Loader (enabled) + Intrusion Protection from ioncube24.com (unconfigured) v5.0.18, Copyright (c) 2002-2015, by ionCube Ltd. with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies

Как же сделать так, чтобы система использовала эту, нужную нам, версию PHP?

Сначала посмотрим на системную переменную PATH

# echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

В ней перечислен список директорий, в которых ищутся программы по имени. Главный нюанс — поиск в директориях происходит последовательно и используется первый найденный результат. Текущий путь до текущего бинарника PHP мы можем увидеть с помощью команды:

Как видно из PATH, /usr/local/bin находится в списке раньше, чем /usr/bin. Значит, если мы поместим ссылку на альтернативную версию PHP “пораньше”, в /usr/local/bin, то именно она и будет использоваться при вызове команды php вместо /usr/bin/php. Мы можем создать эту ссылку руками (и всё даже будет работать), но правильнее использовать специально созданную для этих целей утилиту update-alternatives (в CentOS это просто alternatives, но есть симлинка update-alternatives, поэтому дальше будем оперировать именно этой командой, как универсальной для Debian/Ubuntu/CentOS/и т.д.).

Теперь, давайте зарегистрируем все доступные версии PHP с помощью этой команды:

# update-alternatives --install /usr/local/bin/php php /opt/plesk/php/5.6/bin/php 10 # update-alternatives --install /usr/local/bin/php php /opt/plesk/php/7.0/bin/php 20 # update-alternatives --install /usr/local/bin/php php /usr/bin/php 30

Цифры 10, 20 и 30 — это приоритет. Он работает для автоматического выбора, если администратор сам не выбрал конкретную версию. Самое большое число определяет выбор «по умолчанию».

Проверим, что php теперь указывает на созданную командой симлинку:

# update-alternatives --list | grep php php auto /usr/bin/php # update-alternatives --display php php - status is auto. link currently points to /usr/bin/php /opt/plesk/php/5.6/bin/php - priority 10 /opt/plesk/php/7.0/bin/php - priority 20 /usr/bin/php - priority 30 Current `best' version is /usr/bin/php.

Давайте разберемся, что же update-alternatives сделала для нас:

# which php /usr/local/bin/php # ls -l /usr/local/bin/php lrwxrwxrwx. 1 root root 21 Jul 2 10:03 /usr/local/bin/php -> /etc/alternatives/php # ls -l /etc/alternatives/php lrwxrwxrwx. 1 root root 26 Jul 2 10:03 /etc/alternatives/php -> /usr/bin/php

Как видно, она создала цепочку симлинок и теперь по требованию просто меняет промежуточную симлинку на нужный нам бинарь.

# php -v PHP 5.4.16 (cli) (built: May 12 2016 13:45:17) .

То есть, мы успешно настроили группу PHP в update-alternatives, где по умолчанию в автоматическом режиме выбран системный PHP. Сейчас у нас есть возможность переключить команду PHP на любую другую версию..

Давайте переключимся на PHP версии 5.6, которая идет в поставке с Plesk’ом:

# update-alternatives --config php There are 3 programs which provide 'php'. Selection Command ----------------------------------------------- 1 /opt/plesk/php/5.6/bin/php 2 /opt/plesk/php/7.0/bin/php *+ 3 /usr/bin/php Enter to keep the current selection[+], or type selection number: 1

Проверяем, что переключение произошло:

# php -v PHP 5.6.22 (cli) (built: May 27 2016 11:45:28) … # update-alternatives --display php php - status is manual. link currently points to /opt/plesk/php/5.6/bin/php …

Все отлично работает. Теперь в системе используется нужная нам версия PHP и я не опасаюсь, что эта настройка слетит при следующих пакетных обновлениях.

С помощью update-alternatives можно выбирать не только версию PHP, но и многие другие вещи, например разные версии phpunit или редактор по умолчанию в системе. Подход этот универсален для различных систем. Не изобретая своего велосипеда, используя существующие инструменты, вы можете быть уверенным, что не устроили для ваших коллег квеста “Ну почему оно так работает?!”. Настраивайте свою систему правильно.

Источник

Тема: ISPManager 5 Business + Alt-PHP

ivanvp вне форума

По умолчаниюISPManager 5 Business + Alt-PHP

Сегодня заметили, что в разделе Версии PHP пропали все alt-php версии. Клиентам остался доступен только php-native. В логах ispmanager ничего не вижу. В логах cagefs тоже пусто.

usaafko вне форума

По умолчанию

Sedna вне форума

По умолчанию

Пропали — это совсем из списка исчезли или стали неактивны и в «Пакетах» видно, что есть неустановленные, например, sybase?

x2com вне форума

По умолчанию

Вот у меня как раз такая история, с последним обновлением до 5.43.0 как раз поотваливались все альтернативные версии php, и только sybase среди пакетов отображается как неустановленный.
Видимо вы знаете об этой проблеме, расскажите тогда, как ее решить, пожалуйста.

Sedna вне форума

По умолчанию

mysql ispmgr
select * from phpinstall where install=’instnow’;
Проверить, что в выводе действительно sybase
update phpinstall set install=’on’ where install=’instnow’;
После этого в версиях РНР должно всё прийти в норму.

x2com вне форума

По умолчанию

ЦитатаСообщение от Sedna Посмотреть сообщение

mysql ispmgr
select * from phpinstall where install=’instnow’;
Проверить, что в выводе действительно sybase
update phpinstall set install=’on’ where install=’instnow’;
После этого в версиях РНР должно всё прийти в норму.

MySQL вернула пустой результат

Причем упоминания sybase в таблице нет вовсе.

Dasha вне форума

По умолчанию

Сталкивалась недавно. Помогло
yum groupinstall alt-php
После чего удаляем файл /usr/local/mgr5/var/.alt_php.xml , чтобы ISPmanager заново собрал информацию о пакетах php.
Проверяем, что все пакеты установились, что все они есть (rpm -qa | grep .. )
В базе MySQL, в таблице phpinstall проставляем всем warning=off.

HappyAlex вне форума

По умолчанию

у меня уже давно . крутится шестиренка на против каждого узла
пишет php_install или phpinstall cagefsrpm

в таблице Phpinstall у все warning=off

HappyAlex вне форума

По умолчанию

он попытается заинсталить 5.1 4.4 (ну если используется CL)

zagugel вне форума

По умолчанию

у нас 2 раза была идентичная проблема.
в саппорте, за одно обращение нам сказали, что у нас кривые руки.

  • Навигация
  • Кабинет
  • Личные сообщения
  • Подписки
  • Кто на сайте
  • Поиск по форуму
  • Главная страница форума
  • Форум
  • Платформы управления виртуализацией и оборудованием
    1. VMmanager KVM, Cloud
    2. DCImanager
    3. VMmanager OVZ (VEmanager)
    4. VDSmanager
      1. VDSmanager-FreeBSD
      2. VDSmanager для OpenVZ
      3. VDSmanager для XEN и KVM
  • ISPmanager, панель управления сервером
    1. Инсталяция — Системные требования
    2. Общие технические вопросы
    3. Обратная связь
    4. Внешние приложения
  • BILLmanager, биллинговая система для хостинга
    1. Общие вопросы
    2. Обратная связь
    3. Проблемы
  • Другие продукты
    1. DNSmanager
    2. IPmanager
  • Общие вопросы
    1. Новости компании
    2. ISPsystem общие вопросы
    3. Цены, работа биллинга, лицензии, партнерство
    4. Безопасность
  • Дополнения
    1. API
    2. Plugins
  • Другое
    1. Корзина

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения

Powered by vBulletin® Version 4.2.5
Copyright © 2023 vBulletin Solutions Inc. All rights reserved.
Перевод: zCarot

Источник

Оцените статью