Назад | Перейти на главную страницу

apache2.4 + php-fpm + squirrelmail

Я пытаюсь заставить squirrelmail работать с apache 2.4 + php-fpm (через mod_proxy_fcgi), я хочу, чтобы он работал на всех виртуальных хостах при запросе "/ wm". На моем старом VPS, в котором в качестве модуля использовались apache2.2 и php, это было достигнуто следующим образом:

Alias /wm /usr/share/squirrelmail
<Directory /usr/share/squirrelmail>
RemoveHandler .php  .php3 .php4 .phtml
AddType application/x-httpd-php .php  .php3 .php4 .phtml
php_admin_value open_basedir none
php_admin_value upload_tmp_dir /tmp
php_admin_value session.save_path "/tmp"
php_admin_value include_path .:..
php_admin_value safe_mode off
php_admin_value mbstring.func_overload 0
DirectoryIndex index.php       
</Directory>

Я пробовал ProxyPassMatch ^ (/.*. Php) $ fcgi: //127.0.0.1: 1302 / usr / share / squirrelmail / $ 1, но, увы, apache не разрешает ProxyPassMatch с директивой каталога. Я продолжал экспериментировать, и только «Файл не найден» и «Входной файл не указан» (я предполагаю, что это сообщения от php-fpm, поскольку для apache настроена как минимум ошибка 404). На данный момент я совершенно не знаю, что делать, чтобы это работало.

Что ж, какое-то грязное решение, но оно сработало, поэтому я просто отправлю его здесь, если кому-то это понадобится.
Что я сделал, чтобы это работало, было:
1. Я создал символическую ссылку в корневой папке виртуального хоста.
2. Добавлен /usr/share/squirrelmail/:/etc/squirrelmail/:/var/lib/squirrelmail/:/etc/hostname:/etc/mailname в open_basedir для пулов, которые обрабатывали эти виртуальные хосты.
Примечание: опция Follow symlink должна быть включена (я думаю, она включена по умолчанию)
Надеюсь, это поможет кому-то в качестве временного решения.