Переклчаем PHP в режим CGI для одной папки

less than 1 minute read

На днях столкнулся с проблемой: phpmyadmin ругался на отсутствие модуля mcrypt в php. Странность заключалась в том, что в консольном выводе php -i модуль mcrypt присутствовал:

php -m |grep mcrypt

Я немного потупил, и до меня дошло, что на сервере было 2 инсталляции php, обе собраны из исходников, при этом модуль для apache присутствовал только в одной из них, а mcrypt - в другой.

Ситуация бредовая, но именно она сподвигла меня на создание это записи о том, как настроить PHP работать в режиме CGI для одной папки на примере phpmyadmin.

Для этого нужно отредактировать файл конфигурации следующими строками:

ScriptAlias /php/ /usr/bin/

<Directory /usr/share/phpMyAdmin/>  
  AddHandler php-cgi-handler .php  
  Action php-cgi-handler /php/php-cgi  
</Directory>

Вместо phpmyadmin может быть папка сайта.