如何configurationcPanel下的部落来显示HTML邮件?

在cPanel中,部落默认不显示富文本/ HTML电子邮件,只显示纯文本版本。 我知道有一个选项来显示HTML电子邮件,但我不知道如何启用cPanel下。

我在网上阅读了很多论坛post,说我需要设置$mime_drivers['html']['inline']=true;mime_drivers.php 。 但是,如果我改变这个文件,恐怕cPanel会覆盖它。 cPanel有覆盖我修改的文件的倾向。

如何configurationcPanel下的部落来显示HTML邮件?

这个问题让我难住了很久。 几个月前,我无法find答案,所以我刚刚编辑/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更新部落,这个变化将会丢失,我的用户会抱怨。 现在,我相信我find了一个解决scheme。 (然而部落尚未更新,所以我无法确定这是否有效)。

在包含imp/config/mime_drivers.php ,部落会检查一个目录imp/config/mime_drivers.d/ ,如果find的话,将include()该目录中以.php结尾的所有文件。 这个目录在cPanel下不存在,所以可以创build它,而不用担心被覆盖

文件/usr/local/cpanel/src/3rdparty/gpl/README-horde包含关于cPanel如何更新部落的细节,以及关于定制部落的说明。 该文件的一些相关除外提供了如何进行永久需要的定制的线索:

在/ scripts / upcp和/ scripts / maintenance的维护阶段,执行/ usr / local / cpanel / install / webmail中的webmail脚本。 这反过来执行/ usr / local / cpanel / bin / update-horde。 下面介绍了更新部落执行的步骤:

  1. 部落安装被清除(rm -rf / usr / local / cpanel / base / horde)。
  2. 使用update-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 

和之前的tarball一样,$ hordever的值必须与update-horde脚本中定义的值相匹配。 覆盖tarball提供了一个简单的方法来定制部落的特定方面。 例如,某些graphics,主题,模块,插件等都可以作为覆盖图提供。 由于它被提取到/ usr / local / cpanel / base中,所以tarball的内容必须与/ usr / local / cpanel / base / horde中的目录布局匹配。

从这个文件中,我能够发现以下步骤来覆盖内联的HTML视图设置,如下所示:

tl; dr:这里是步骤:

  1. 在临时目录中,创buildcPanel期望的horde/imp/config/mime_drivers.d/目录结构:

     mkdir -p /tmp/horde/imp/config/mime_drivers.d 
  2. 在新目录中创build一个覆盖文件。 我将它命名为html.php但只要以.php结尾,就可以将其命名为任何内容

  3. 将以下内容插入到/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 ); 
  4. /var/cpanel/horde/overlay.tar.gz创build一个.tar.gz版本的/tmp/horde目录:

     cd /tmp tar -czvf /var/cpanel/horde/overlay.tar.gz horde 

    每次部落更新时,这个文件应该由cPanel扩展,重新添加configuration覆盖。

  5. /tmp/horde/imp/config/mime_drivers.d/移到位置:

     mv /tmp/horde/imp/config/mime_drivers.d /usr/local/cpanel/base/horde/imp/config/ 
  6. login部落进行testing。