Этот вопрос меня давно озадачил. Несколько месяцев назад мне не удалось найти ответ, и я просто отредактировал /usr/local/cpanel/base/horde/imp/config/mime_drivers.php
, специально изменив раздел:
$mime_drivers['imp']['html'] = array(
'inline' => false,
чтобы:
$mime_drivers['imp']['html'] = array(
'inline' => true,
Как я и боялся, каждый раз, когда cPanel обновляет Horde, это изменение будет потеряно, и мои пользователи будут жаловаться. Теперь я считаю, что нашел решение. (Однако Орда еще не обновилась, поэтому я не могу точно сказать, работает ли это).
После включения imp/config/mime_drivers.php
Horde проверит каталог imp/config/mime_drivers.d/
и, если найдет, найдет include()
все файлы, оканчивающиеся .php
на этот каталог. Этот каталог не существует в cPanel, поэтому его можно создавать, не опасаясь перезаписи .
Файл /usr/local/cpanel/src/3rdparty/gpl/README-horde
содержит подробную информацию о том, как cPanel обновляет Horde, а также инструкции по настройке Horde. Несколько соответствующих исключений из этого файла дают подсказки о том, как сделать настройки, которые я хотел постоянно:
На этапе обслуживания / scripts / upcp и / scripts / maintenance выполняется сценарий веб-почты, находящийся в / usr / local / cpanel / install / webmail. Это в свою очередь выполняет / usr / local / cpanel / bin / update-horde. Ниже представлен обзор шагов, которые выполняет update-horde:
- Установка Horde полностью очищена (rm -rf / usr / local / cpanel / base / horde).
- Используя версию, указанную в update-horde, соответствующий исходный архив Horde будет извлечен в / usr / local / cpanel / base.
[...]
После определения того, какой tarball использовать для исходной установки, и извлечения его, скрипт update-horde проверяет следующее:
o /var/cpanel/horde/overlay.tar
o /var/cpanel/horde/overlay.tar.gz
o /var/cpanel/horde/overlay.$hordever.tar
o /var/cpanel/horde/overlay.$hordever.tar.gz
Как и в предыдущих архивах, значение $ hordever должно совпадать с тем, что определено в скрипте update-horde. Тарбол наложения обеспечивает простой способ настройки определенных аспектов Орды. Например, определенная графика, темы, модули, плагины и т.п. могут быть предоставлены в качестве наложения. Поскольку он извлекается в / usr / local / cpanel / base, содержимое архива должно соответствовать расположению каталога, найденному в / usr / local / cpanel / base / horde.
Из этого файла я смог обнаружить следующие шаги для переопределения встроенного HTML-представления следующим образом:
tl; dr: вот шаги:
Во временном каталоге создайте horde/imp/config/mime_drivers.d/
структуру каталогов, которую ожидает cPanel:
mkdir -p /tmp/horde/imp/config/mime_drivers.d
Создайте файл переопределения в этом новом каталоге. Я назвал мой, html.php
но вы можете назвать его как угодно, если он заканчивается.php
Вставьте следующее содержимое в /tmp/horde/imp/config/mime_drivers.d/html.php
:
<?php
/**
* HTML driver settings
*/
$mime_drivers['imp']['html'] = array(
'inline' => true,
'handles' => array(
'text/html'
),
'icons' => array(
'default' => 'html.png'
),
/* If you don't want to display the link to open the HTML content in a
* separate window, set the following to false. */
'external' => true,
/* Run 'tidy' on all HTML output? This requires at least version 2.0 of the
* PECL 'tidy' extension to be installed on your system. */
'tidy' => false,
/* Check for phishing exploits? */
'phishing_check' => true
);
Создайте .tar.gz
версию /tmp/horde
каталога по адресу /var/cpanel/horde/overlay.tar.gz
:
cd /tmp
tar -czvf /var/cpanel/horde/overlay.tar.gz horde
Этот файл должен расширяться cPanel при каждом обновлении Horde, повторно добавляя переопределение вашей конфигурации.
Переместите /tmp/horde/imp/config/mime_drivers.d/
на место:
mv /tmp/horde/imp/config/mime_drivers.d /usr/local/cpanel/base/horde/imp/config/
Войдите в Орду, чтобы проверить.