Есть сайты которые требуют PHP5.3 а есть такие, на которых интерпретатор выдает кучу ошибок и приходится использовать старый 5.2, я понимаю, если вы держите на серваке один сайт, тогда можно его проапгрейдить и решить проблему модификацией своего скрипта, но вот если у вас сотни сайтов чужих на сервере, то я думаю вам будет лень править чужие скрипты, проще дать возможность запускать разные сайты с разным PHP.
Оригинал инструкции тут https://mbi-solutions.blogspot.com/2011/07/running-php-53-and-php-52-on-same.html, но я исправил кое какие ошибки и дополнил инструкцию
—with-config-file-path=/opt/php5.2 —with-mysqli \
—with-pdo-mysql —with-mysql —with-curl \
—with-gd —with-jpeg-dir —with-xsl —with-zlib \
—enable-cli —enable-fastcgi —enable-discard-path \
—enable-force-cgi-redirect —with-iconv —with-gettext \
—with-curl —with-bz2 —enable-mbstring=all —enable-zip
после успешной установки создаем файл
/usr/lib/cgi-bin/php52-cgi
и вставляем в него такое содержимое
#!/bin/sh
PHPRC=»/opt/php5.2/»
export PHPRC
PHP_FCGI_CHILDREN=4
export PHP_FCGI_CHILDREN
PHP_FCGI_MAX_REQUESTS=5000
export PHP_FCGI_MAX_REQUESTS
exec /opt/php5.2/bin/php-cgi
делаем его исполняемым
chmod +x /usr/lib/cgi-bin/php52-cgi
создаем файл /etc/apache2/php52.conf
и вставляем в него
<FilesMatch «\.php»>
SetHandler application/x-httpd-php5
</FilesMatch>
ScriptAlias /php52-cgi /usr/lib/cgi-bin/php52-cgi
Action application/x-httpd-php5 /php52-cgi
AddHandler application/x-httpd-php5 .php
Теперь делаем финальные манипуляции с апачем
a2enmod cgi fastcgi actions
И перезагружаем апач
/etc/init.d/apache2 restart
Теперь можете добавлять в любой конфиг виртуалхоста строчку
Include php52.conf
но обратите внимание на директорию
<Directory «/usr/lib/cgi-bin»>
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
если у вас такого не прописано в конфиге виртуалхоста, то пропишите, иначе будет ругаться на отсутствие доступа.
По аналогии можно подключить например php4 или php6 и адаптировать свою хостинг-панель для возможности выбора версии php.
Источник https://blog.pavelb.ru/2012/02/php52-php53-debian-squeeze.html
Просмотров: 3793
./configure
—prefix=/opt/php5.2
—with-config-file-path=/opt/php5.2
—with-mysqli
—with-pdo-mysql
—with-mysql
—with-libdir=/lib/x86_64-linux-gnu
—with-curl
—with-png-dir=/usr/lib/x86_64-linux-gnu
—with-jpeg-dir=/usr/lib/x86_64-linux-gnu
—with-jpeg
—with-xsl
—with-zlib
—enable-cli
—enable-fastcgi
—enable-discard-path
—enable-force-cgi-redirect
у меня сработало такое ))) поправьте пожалуйста