Cette question m'a laissé perplexe pendant longtemps. Il y a quelques mois, je n'ai pas pu trouver la réponse et je viens de /usr/local/cpanel/base/horde/imp/config/mime_drivers.php
modifier, en changeant spécifiquement la section:
$mime_drivers['imp']['html'] = array(
'inline' => false,
à:
$mime_drivers['imp']['html'] = array(
'inline' => true,
Comme je le craignais, chaque fois que cPanel mettait à jour Horde, ce changement était perdu et mes utilisateurs se plaignaient. Maintenant, je pense avoir trouvé une solution. (Cependant, Horde n'a pas encore mis à jour, donc je ne peux pas dire avec certitude si cela fonctionne).
Après l'inclusion imp/config/mime_drivers.php
, Horde recherchera un répertoire imp/config/mime_drivers.d/
et, s'il est trouvé, include()
tous les fichiers se terminant .php
dans ce répertoire. Ce répertoire n'existe pas sous cPanel, il peut donc être créé sans craindre d'être écrasé .
Le fichier /usr/local/cpanel/src/3rdparty/gpl/README-horde
contient des détails sur la façon dont cPanel met à jour Horde, ainsi que des instructions sur la personnalisation de Horde. Quelques exemples pertinents de ce fichier donnent des indices sur la façon de faire les personnalisations que je voulais en permanence:
Pendant la phase de maintenance de / scripts / upcp et / scripts / maintenance, le script de messagerie Web trouvé dans / usr / local / cpanel / install / webmail est exécuté. Celui-ci exécute à son tour / usr / local / cpanel / bin / update-horde. Vous trouverez ci-dessous un aperçu des étapes effectuées par update-horde:
- L'installation de Horde est nettoyée (rm -rf / usr / local / cpanel / base / horde).
- En utilisant la version spécifiée dans update-horde, l'archive tar source Horde appropriée sera extraite vers / usr / local / cpanel / base.
[...]
Après avoir déterminé l'archive tar à utiliser pour l'installation source et l'avoir extraite, le script update-horde vérifie les éléments suivants:
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
Comme avec les tarballs précédents, la valeur de $ hordever doit correspondre à ce qui est défini dans le script update-horde. L'archive tar superposée offre un moyen simple de personnaliser des aspects spécifiques de Horde. Par exemple, certains graphiques, thèmes, modules, plugins et similaires peuvent tous être fournis en superposition. Puisqu'il est extrait dans / usr / local / cpanel / base, le contenu de l'archive tar doit correspondre à la disposition du répertoire trouvé dans / usr / local / cpanel / base / horde.
À partir de ce fichier, j'ai pu découvrir les étapes suivantes pour remplacer le paramètre d'affichage HTML en ligne:
tl; dr: voici les étapes:
Dans un répertoire temporaire, créez la horde/imp/config/mime_drivers.d/
structure de répertoires attendue par cPanel:
mkdir -p /tmp/horde/imp/config/mime_drivers.d
Créez un fichier de remplacement dans ce nouveau répertoire. J'ai nommé le mien html.php
mais vous pouvez le nommer comme vous voulez tant qu'il se termine par.php
Insérez le contenu suivant dans /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
);
Créez une .tar.gz
version du /tmp/horde
répertoire à /var/cpanel/horde/overlay.tar.gz
:
cd /tmp
tar -czvf /var/cpanel/horde/overlay.tar.gz horde
Ce fichier doit être développé par cPanel chaque fois que Horde est mis à jour, en ajoutant à nouveau votre remplacement de configuration.
Déplacez le /tmp/horde/imp/config/mime_drivers.d/
en place:
mv /tmp/horde/imp/config/mime_drivers.d /usr/local/cpanel/base/horde/imp/config/
Connectez-vous à Horde pour tester.