Page 1 of 1

Даунгрейд PHP

Posted: Wed Apr 15, 2015 9:15 pm
by plastilin
Доброго времени суток, можно ли сделать даунгрейд PHP или держать несколько версий PHP на сервере?

Re: Даунгрейд PHP

Posted: Wed Apr 15, 2015 11:03 pm
by skurudo
Короткий ответ - да, можно несколько версий. Но потребуется небольшая ловкость рук.
Самый очевидный вариант - компилить из исходников и запускать как cgi.
В шаблон добавлять или руками или сделать шаблоны.

Даунгрейд - это, конечно, идея, но не слишком хорошая.

Re: Даунгрейд PHP

Posted: Thu Apr 16, 2015 7:36 am
by plastilin
Есть "зачуханый" старый проект на PHP 5.2, установлена Ubuntu 14.04, ну и соответственно PHP 5.5. На сервере есть другие сайты работающие с новой версией PHP. Есть ли возможность запустить старый проект на существующем сервере? Или все же идти в сторону настройки нового сервера со старой версией PHP? Спасибо.

Re: Даунгрейд PHP

Posted: Thu Apr 16, 2015 8:09 am
by skurudo
plastilin wrote:Есть "зачуханый" старый проект на PHP 5.2, установлена Ubuntu 14.04, ну и соответственно PHP 5.5. На сервере есть другие сайты работающие с новой версией PHP. Есть ли возможность запустить старый проект на существующем сервере? Или все же идти в сторону настройки нового сервера со старой версией PHP? Спасибо.
Здесь как обычно дилемма. Если у вас есть ресурсы - время и деньги, можно лабать новый сервак. Но дешевле скомпилировать версию php старее 5.2 (если найдете сырцы) или 5.3 и включить как cgi. Используем стандартный шаблон для phpcgi, но слегка его изменяем, чтобы вонзить нужную версию:

Code: Select all

<VirtualHost 15.29.10.36:8080>

    ServerName shop.ru
    ServerAlias www.shop.ru shop-ru.ru
    ServerAdmin [email protected]
    DocumentRoot /home/shop/web/shop.ru/public_html
    ScriptAlias /cgi-bin/ /home/shop/web/shop.ru/cgi-bin/
    Alias /vstats/ /home/shop/web/shop.ru/stats/
    Alias /error/ /home/shop/web/shop.ru/document_errors/
    SuexecUserGroup shop shop
    CustomLog /var/log/apache2/domains/shop.ru.bytes bytes
    CustomLog /var/log/apache2/domains/shop.ru.log combined
    ErrorLog /var/log/apache2/domains/shop.ru.error.log
    <Directory /home/shop/web/shop.ru/public_html>
php_admin_value open_basedir /home/shop/web/shop.ru/public_html:/home/shop/tmp
php_admin_value upload_tmp_dir /home/shop/tmp
php_admin_value session.save_path /home/shop/tmp
php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -f [email protected]"
        AllowOverride All
        Options +Includes -Indexes +ExecCGI
        Action phpcgi-script /cgi-bin/php
        <Files *.php>
            SetHandler phpcgi-script
        </Files>
    </Directory>
    <Directory /home/shop/web/shop.ru/stats>
        AllowOverride All
    </Directory>
    Include /home/shop/conf/web/apache2.shop.ru.conf*

</VirtualHost>
Ключевой момент в Action phpcgi-script /cgi-bin/php - симлинк лежит в /home/shop/web/shop.ru/cgi-bin/php и нем у нас такое:

Code: Select all

#!/usr/bin/php53-cgi -c/home/shop/web/shop.ru/cgi-bin/php.ini
php53-cgi - это у нас копия скомпиленного пхп версии 5.3
и файл конфигурации к нему

Re: Даунгрейд PHP

Posted: Thu Apr 16, 2015 8:12 am
by skurudo
Скачиваете http://museum.php.net/ нужную версию, распаковываете, компилируете - подключаете и пользуетесь )
В принципе не сложно.

Re: Даунгрейд PHP

Posted: Thu Apr 16, 2015 9:34 am
by plastilin
Понял, спасибо. А в будущих релизах не планируется внедрение функционала использования разный версий PHP на уровне панели?

Re: Даунгрейд PHP

Posted: Thu Apr 16, 2015 9:38 am
by skurudo
plastilin wrote:Понял, спасибо. А в будущих релизах не планируется внедрение функционала использования разный версий PHP на уровне панели?
Как видите тут и руками-то могут быть грабли, а если еще добавлять поддержку платформ... Не простая задача. Это сложновато автоматизировать (как на мой взгляд). Такая идея есть и пока на рассмотрении - https://bugs.vestacp.com/responses/mult ... on-support - голосуйте за нее, чем больше будет, тем выше шансы внедрения. :)

Re: Даунгрейд PHP

Posted: Thu Apr 16, 2015 9:45 am
by plastilin
https://bugs.vestacp.com/responses/pere ... -iz-paneli
Может стоит объединить? Голосов будет больше, а смысл такой же...

Re: Даунгрейд PHP

Posted: Mon May 04, 2015 5:42 pm
by gromozeka
skurudo wrote:Скачиваете http://museum.php.net/ нужную версию, распаковываете, компилируете - подключаете и пользуетесь )
В принципе не сложно.
Друзья, подскажите кому не сложно КАК это сделать? Как именно подключить скомпилированную версию? Спасибо!

Re: Даунгрейд PHP

Posted: Tue May 05, 2015 9:09 am
by skurudo
gromozeka wrote:Друзья, подскажите кому не сложно КАК это сделать? Как именно подключить скомпилированную версию? Спасибо!
Несколькими постами выше - viewtopic.php?f=29&t=8197#p25549
Вы скомпилировали вашу версию? Где она у вас лежит, где-то в opt?