Я только что установил несколько версий PHP на моем сервере, используя FastCGI. Хотя я могу использовать их только когда модуль PHP5 отключен. Когда последний включен, эта конфигурация моего виртуального хоста, кажется, игнорируется:
<Directory /var/www>
AddHandler php-cgi .php
Action php-cgi /cgi-bin-php/php-cgi-5.5.17
</Directory>
Все работает нормально, когда PHP5 отключен, но все выполняется с использованием модуля PHP5, когда он доступен. У вас есть идея?
Спасибо
PS: Я, очевидно, на Apache (2.4) на Debian 7
После некоторого размышления становится понятно, что когда доступен модуль PHP для Apache, Apache2 использует его, поскольку он является его частью. Моя основная проблема заключалась в том, чтобы не указывать обработчик для каждого веб-сайта, который у меня есть на сервере, и, если он не определен, использовать версию PHP по умолчанию с FastCGI.
Чтобы это заработало, я в итоге добавил что-то вроде этого в свой fastcgi.conf
:
<Directory /var/www>
AddHandler php-cgi .php
Action php-cgi /cgi-bin-php/php-cgi-5.5.17
</Directory>
При этом я был уверен, что по крайней мере PHP5.5 запущен для каждого сайта, без необходимости указывать дескриптор на виртуальном хосте. Проблема была, как насчет Phpmyadmin, который работает под /usr/share/phpmyadmin
? Затем я удалил <Directory>
тег, и это работает.
Я не знаю, является ли это лучшим решением, но, пожалуйста, дайте мне знать, если вышеприведенное верно или есть лучший способ выполнить то, что мне нужно.
Спасибо
Других решений пока нет …