Смена версии php vestacp

Vesta Control Panel — Forum

всем привет
после установки Весты в системе php 7.2.7, но мне надо ее понизить
из remi подтянулось php54 — это меня устраивает
вопрос: как сменить версию на другую в рамках Весты?

pro100ssk Posts: 111 Joined: Mon Oct 19, 2015 12:12 pm
Os: Debian 8x Web: apache + nginx

Re: как сменить версию php на CentOS 7

Post by pro100ssk » Tue Nov 27, 2018 10:16 pm

В рамках VestaCP никак (надеюсь пока-что)
Можете вручную установить нужную версию затем отключить ненужную версию и включить нужную.
Мануалов в сети много.

grayfolk Support team Posts: 1111 Joined: Tue Jul 30, 2013 10:18 pm Contact:

Re: как сменить версию php на CentOS 7

Post by grayfolk » Wed Nov 28, 2018 2:21 am

Панель всего лишь ставит ДЕФОЛТНЫЕ версии и потом позволяет управлять конфигами. Никаких иных связей с версиями используемого ПО у панели нет.

Alex Connor Support team Posts: 1047 Joined: Fri Mar 21, 2014 7:49 am Contact:

Re: как сменить версию php на CentOS 7

Post by Alex Connor » Wed Nov 28, 2018 11:24 am

https://it-data.co.ua/tmp/multiphp_vesta.sh

pr0g Posts: 5 Joined: Thu Jul 13, 2017 4:18 am
Os: CentOS 6x Web: nginx + php-fpm

Re: как сменить версию php на CentOS 7

Post by pr0g » Tue Dec 04, 2018 10:46 am

всем привет
после установки Весты в системе php 7.2.7, но мне надо ее понизить
из remi подтянулось php54 — это меня устраивает
вопрос: как сменить версию на другую в рамках Весты?

prmres Posts: 57 Joined: Tue Feb 02, 2016 4:28 pm
Os: CentOS 7x Web: apache + nginx

Re: как сменить версию php на CentOS 7

Post by prmres » Wed Dec 05, 2018 5:04 pm

из коробки не ставит, надо немножко «подкрутить»:

сначала поставить yum-utils:

yum install -y http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum-config-manager --enable remi yum-config-manager --enable remi-php72

или руками включить (enabled=1) репозитории в:
/etc/yum.repos.d/remi.repo
/etc/yum.repos.d/remi-php72.repo

toherman Posts: 16 Joined: Mon Sep 21, 2015 3:27 pm
Os: CentOS 6x Web: nginx + php-fpm

Re: как сменить версию php на CentOS 7

Post by toherman » Sat Jan 05, 2019 9:44 pm

Простите, за, возможно, глупый вопрос — получится ли, указанными советами, сделать мульти-php?
Просто, на хостинге есть сайты, которые давно не обновляются хозяевами, подозреваю, не перенесут миграцию на php-7 всего хоста. Так как, некоторые функции могут не поддерживаться.

Читайте также:  Nginx static files html

pro100ssk Posts: 111 Joined: Mon Oct 19, 2015 12:12 pm
Os: Debian 8x Web: apache + nginx

Re: как сменить версию php на CentOS 7

Post by pro100ssk » Wed Feb 13, 2019 7:55 pm

mailarn Posts: 46 Joined: Tue Feb 12, 2019 2:38 pm
Os: CentOS 6x Web: apache

Re: как сменить версию php на CentOS 7

Post by mailarn » Mon Feb 18, 2019 4:37 pm

Источник

Альтернативные версии PHP в VestaCP

Рассмотрим установку альтернативной версии php на примере установленной панели VestaCP на систему Debian 8 (jessie).

Сервер с установленной панелью VestaCP доступен для установки из настроенного шаблона, при заказе сервера нужно выбрать ОС VestaCP.

По умолчанию Debian 8 идет с версией php 5.6, в данном топике рассмотрим установку альтернативной версии php 7.2

1. Проверяем текущую версию php предварительно создав файл /home/admin/web/test.ru/public_html/phpinfo.php с содержимым:

версия php в VestaCP

Результат:

2. Устанавливаем необходимые пакеты командой:

apt-get update && apt-get install build-essential libbz2-dev libjpeg-dev libpng-dev libfreetype6 libfreetype6-dev libmcrypt-dev libmcrypt4 mcrypt libedit-dev libreadline-dev libxslt1-dev autoconf g++ make openssl libssl-dev libcurl4-openssl-dev libcurl4-openssl-dev pkg-config libsasl2-dev zlib1g-dev libzip-dev libicu-dev -y

3. Для компиляции разных версий PHP воспользуемся менеджером PHP версий PHPBrew.

Скачивание и установка в систему менеджера php версий PHPBrew:

curl -L -O https://github.com/phpbrew/phpbrew/raw/master/phpbrew && chmod +x phpbrew && mv phpbrew /usr/bin/phpbrew && mkdir -p /usr/local/php && phpbrew init --root=/usr/local/php && export PHPBREW_ROOT=/usr/local/php && [[ -e ~/.phpbrew/bashrc ]] && source ~/.phpbrew/bashrc && phpbrew update && phpbrew update --old

Проверка установленной версии PHPBrew

phpbrew — 1.26.0
cliframework core: 2.5.4

4. Компиляция PHP 7.2 с помощью PHPBrew

phpbrew install 7.2 +default +openssl=shared -- --with-openssl-dir=/usr/include/openssl --with-mysql-sock=/var/run/mysqld/mysqld.sock --with-mysql=mysqlnd --with-mysqli=mysqlnd --enable-pdo --with-pdo-mysql=mysqlnd --enable-exif --with-jpeg-dir=/usr --with-png-dir=/usr --with-freetype-dir=/usr --with-zlib-dir=/usr --with-mcrypt=/usr --with-mhash --with-xsl=/usr --enable-zip --enable-cgi --with-curl --with-gd --enable-pcntl --enable-mbregex --enable-gd-native-ttf --with-libdir=lib64 --enable-dba=shared --enable-intl --with-readline=/usr --enable-simplexml --enable-soap --enable-zip --with-mhash=yes --enable-shmop --enable-sockets --enable-wddx --enable-calendar --enable-sysvsem --enable-sysvshm --enable-sysvmsg --enable-bcmath --with-bz2 --enable-ctype --with-cdb --with-iconv --enable-exif --enable-ftp --with-gettext --with-pic

Спустя 15 минут компиляция PHP будет завершена о чем будет свидетельствовать вывод консоли:

===> Building. Build finished: 15.4 minutes. Installing. ---> Creating php-fpm.conf ---> Creating php.ini ---> Copying /usr/local/php/build/php-7.2.33/php.ini-development ---> Found date.timezone is not set, patching. ---> Found date.timezone, patching config timezone with UTC Initializing pear config. config-set succeeded config-set succeeded config-set succeeded Enabling pear auto-discover. config-set succeeded Congratulations! Now you have PHP with 7.2.33 as php-7.2.33 * To configure your installed PHP further, you can edit the config file at /usr/local/php/php/php-7.2.33/etc/php.ini To use the newly built PHP, try the line(s) below: $ phpbrew use php-7.2.33 Or you can use switch command to switch your default php to php-7.2.33: $ phpbrew switch php-7.2.33 Enjoy!

4.1 Для компиляции PHP 7.4 нужно установить дополнительные пакеты командой:

apt-get install -y libonig-dev libpq-dev
phpbrew install 7.4 +default +openssl=shared -- --with-openssl-dir=/usr/include/openssl --with-mysql-sock=/var/run/mysqld/mysqld.sock --with-mysql=mysqlnd --with-mysqli=mysqlnd --enable-pdo --with-pdo-mysql=mysqlnd --enable-exif --with-jpeg-dir=/usr --with-png-dir=/usr --with-freetype-dir=/usr --with-zlib-dir=/usr --with-mcrypt=/usr --with-mhash --with-xsl=/usr --enable-zip --enable-cgi --with-curl --with-gd --enable-pcntl --enable-mbregex --enable-gd-native-ttf --with-libdir=lib64 --enable-dba=shared --enable-intl --with-readline=/usr --enable-simplexml --enable-soap --enable-zip --with-mhash=yes --enable-shmop --enable-sockets --enable-wddx --enable-calendar --enable-sysvsem --enable-sysvshm --enable-sysvmsg --enable-bcmath --with-bz2 --enable-ctype --with-cdb --with-iconv --enable-exif --enable-ftp --with-gettext --with-pic

5. Добавление символической ссылки для установленной версии PHP 7.2 на /usr/local/php

ln -s /usr/local/php/php/php-7.2.33 /usr/local/php/php72

6. Включение CGI модуля Apache2

a2enmod actions cgi && service apache2 restart

7. Добавление шаблона и bash сценария в панель VestaCP для переключения версий PHP.

Читайте также:  Dataset python power bi

7.1 Добавление bash сценария для версии php 7.2 в файл /usr/local/vesta/data/templates/web/apache2/php72.sh

#!/bin/bash user="$1" domain="$2" ip="$3" home_dir="$4" docroot="$5" wrapper_script='#!/usr/local/php/php72/bin/php-cgi -c /usr/local/php/php72/etc/php.ini' wrapper_file="/home/$user/web/$domain/cgi-bin/php" echo "$wrapper_script" > $wrapper_file chown $user:$user $wrapper_file chmod -f 751 $wrapper_file exit 0

7.2 Добавление шаблона для создания панелью VestaCP конфигурационного файла apache2.

Протокол http, файл /usr/local/vesta/data/templates/web/apache2/php72.tpl

 ServerName %domain_idn% %alias_string% ServerAdmin %email% DocumentRoot %docroot% ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/ Alias /vstats/ %home%/%user%/web/%domain%/stats/ Alias /error/ %home%/%user%/web/%domain%/document_errors/ SuexecUserGroup %user% %group% CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes CustomLog /var/log/%web_system%/domains/%domain%.log combined ErrorLog /var/log/%web_system%/domains/%domain%.error.log AllowOverride All Options +Includes -Indexes +ExecCGI php_admin_value open_basedir %docroot%:%home%/%user%/tmp php_admin_value upload_tmp_dir %home%/%user%/tmp php_admin_value session.save_path %home%/%user%/tmp Action phpcgi-script /cgi-bin/php SetHandler phpcgi-script  AllowOverride All IncludeOptional %home%/%user%/conf/web/%web_system%.%domain%.conf* 

Протокол https, файл /usr/local/vesta/data/templates/web/apache2/php72.stpl

 ServerName %domain_idn% %alias_string% ServerAdmin %email% DocumentRoot %sdocroot% ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/ Alias /vstats/ %home%/%user%/web/%domain%/stats/ Alias /error/ %home%/%user%/web/%domain%/document_errors/ SuexecUserGroup %user% %group% CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes CustomLog /var/log/%web_system%/domains/%domain%.log combined ErrorLog /var/log/%web_system%/domains/%domain%.error.log SSLRequireSSL AllowOverride All Options +Includes -Indexes +ExecCGI php_admin_value open_basedir %docroot%:%home%/%user%/tmp php_admin_value upload_tmp_dir %home%/%user%/tmp php_admin_value session.save_path %home%/%user%/tmp Action phpcgi-script /cgi-bin/php SetHandler phpcgi-script  AllowOverride All SSLEngine on SSLVerifyClient none SSLCertificateFile %ssl_crt% SSLCertificateKeyFile %ssl_key% %ssl_ca_str%SSLCertificateChainFile %ssl_ca% IncludeOptional %home%/%user%/conf/web/s%web_system%.%domain%.conf* 

8. Устанавливаем права на шаблоны, перезапускаем вебсервер Apache2 и проверяем.

chmod 755 /usr/local/vesta/data/templates/web/apache2/* && service apache2 restart

В настройках домена в разделе Шаблон Web APACHE2 появится новый шаблон с названием PHP72, выбрав его и сохранив изменения можно проверить версию PHP (см. пункт 1).

Выбор php 7.2 в панели VestaCP

PHP 7.2 в панели VestaCP

Аналогичным способом повторяя пункты 4-8 можно установить другие версии PHP и создать для них шаблоны в панели VestaCP.

Источник

Переключение версий php для домена (VestaCP) Print

По умолчанию домены работают на основной версии PHP это php-mod. Чтобы изменить php версию на другую существует несколько способов:

Читайте также:  Php read url https

Переустановить текущую основную версию php на желаемую. Это может затронуть работу доменов уже работающих на основной версии PHP. Домен будет работать в режиме mod-php.

Сменить Web Template для домена.Для этого используется php-selector. Домен будет работать в режиме CGI/FastCGI. Для этого используется php-selector.

Первый способ применяется когда для работы домена нужен именно режим mod-php, но домен не хочет работать на текущей основной версии php и режим CGI ему не подходит. Второй способ является безболезненным его мы и рассмотрим.

Второй способ доступен только для ОС CentOS. Для Debian или Ubuntu не раелизован php-selector и нету возможности в панели управления выбирать разные версии PHP!

Для смены версии PHP нужно перейти в пункт меню WEB и напротив нужного домена выбрать EDIT . Дальше в настройках домена нас интересует поле Web Template , по умолчанию там установлено значение default — это и есть режим работы mod-php. Изменим его например на php-7.0, для этого выбираем sk-php70 и сохраняем.

Дальше чтобы убедиться что наши действия действительно применились, можно проверить информацию о PHP

По умолчанию для доменов доступны следующие версии PHP: php-5.5, php-5.6, php-7.0. Если нам хочеться версию PHP посвежее прийдется пошаманить немножко в консоли. Нужно залогиниться в консоль под пользователем root, скачать установочный скрипт и установить нужные нам версии PHP. После чего они станут доступны для доменов.

wget https://cdn.swiftcloud.ru/vestacp/sk-php-selector.sh bash sk-php-selector.sh php71 php72
[root@myservak ~]# wget https://cdn.swiftcloud.ru/vestacp/sk-php-selector.sh --2018-07-02 00:41:10-- https://cdn.swiftcloud.ru/vestacp/sk-php-selector.sh Распознаётся cdn.swiftcloud.ru (cdn.swiftcloud.ru). 81.177.140.54 Подключение к cdn.swiftcloud.ru (cdn.swiftcloud.ru)|81.177.140.54|:443. соединение установлено. HTTP-запрос отправлен. Ожидание ответа. 200 OK Длина: 5522 (5,4K) [application/x-sh] Сохранение в: «sk-php-selector.sh» 100%[================================================================================================================================================================================================>] 5.522 --.-K/s за 0s 2018-07-02 00:41:11 (370 MB/s) - «sk-php-selector.sh» сохранён [5522/5522] [root@myservak ~]# bash sk-php-selector.sh php71 php72 You have remi repo installed and run: CentOS Linux release 7.4.1708 (Core) ########## Start installing aditional php version ########## Actually you runing php 5.6, so I will skip it Installing PHP 7.1 . PHP 71 Ready! Actually you runing php 5.6, so I will skip it Installing PHP 7.2 . PHP 72 Ready! ################################ Aditional PHP versión installed! More info on skamasle.com or vestacp forums or twit your experience in @skamasle

Данным скриптом возможно доустановить следующие версии: php-5.4, php-5.5, php-5.6, php-7.0, php-7.1, php-7.2

Источник

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