2016-10-15 1 views
1

Я установил коллекцию версий PHP из Remi Repositories, которая может быть проигнорирована для самого вопроса, но сохранена для понимания обработанной мной попытки.Как настроить Apache для множественной версии PHP из htaccess

Они прекрасно работают из командной строки, но я хотел бы использовать их с Apache 2 (HTTPD на Fedora 24), работает несколько виртуальных хостов, как в:

php54.test 
php55.test 
php56.test 
php70.test 
php71.test 

Я создал конфигурационные файлы VirtualHost и каждый работает нормально.

Я хочу запустить каждую соответствующую версию php (в соответствии с наводящим ServerName), но я не могу найти, как загрузить PHP с каждого виртуального хоста. я не мог найти соответствующий Remi libphpX.so для загрузки их в качестве модулей:

<VirtualHost *:80> 
    ServerName php54.test 
    DocumentRoot /var/www/php54 

    #SOMETHING LIKE THIS... 
    LoadModule php??_module  modules/libphp??.so 

</VirtualHost> 

у меня есть, и это не новость, общий хостинг, который позволяет мне изменить PHP версии от .htaccess и я могу сделать что-то вроде этого:

AddHandler application/x-httpd-php54 .php 
AddHandler application/x-httpd-php55 .php 
AddHandler application/x-httpd-php56 .php 
AddHandler application/x-httpd-php7 .php 
AddHandler application/x-httpd-php71 .php 

Я могу выглядеть как манекен сейчас, но как я могу сделать то же .htaccess переключение на наличие нескольких версий PHP доступны?

Возможно, я не знаю, что и как искать в Google, чтобы найти наилучший согласованный ответ.

ответ

4

Вы не можете использовать несколько версий mod_php.

Лучше решение заключается в использовании PHP-FPM (Fastcgi Process Manager), используя в каждом ВХост с SetHandler на FCGI сервере:

SetHandler "proxy:fcgi://127.0.0.1:9070" 

Or (с использованием UNIX сокет)

SetHandler "proxy:unix:/var/opt/remi/php70/run/php-fpm/www.sock|fcgi://localhost" 

Это описано в этой статье: My PHP workstation.

+0

Решение, данное @Remi Collet в своей статье, работает как шарм! –

Смежные вопросы