如何在 cPanel 下配置 Horde 以显示 HTML 电子邮件?

如何在 cPanel 下配置 Horde 以显示 HTML 电子邮件?

在 cPanel 中,Horde 默认不显示富文本/HTML 邮件,它只显示纯文本版本。我知道有一个选项可以显示 HTML 邮件,但我不知道如何在 cPanel 下启用该选项。

我读了很多在线论坛帖子,说我需要设置$mime_drivers['html']['inline']=true;mime_drivers.php但是,如果我更改此文件,我担心 cPanel 会覆盖它。cPanel 倾向于覆盖我修改的文件。

如何在 cPanel 下配置 Horde 以显示 HTML 电子邮件?

答案1

这个问题让我困惑了好久。几个月前我找不到答案,所以我就编辑了/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 时,这个更改都会丢失,我的用户会抱怨。现在,我相信我找到了一个解决方案。(但是 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 的 Webmail 脚本。这反过来又执行 /usr/local/cpanel/bin/update-horde。下面概述了 update-horde 执行的步骤:

  1. Horde 安装已被清除(rm -rf /usr/local/cpanel/base/horde)。
  2. 使用 update-horde 中指定的版本,相应的 Horde 源 tarball 将被提取到 /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 提供了一种自定义 Horde 特定方面的简单方法。例如,某些图形、主题、模块、插件等都可以作为覆盖提供。由于它被提取到 /usr/local/cpanel/base,因此 tarball 的内容必须与 /usr/local/cpanel/base/horde 中的目录布局相匹配。

从此文件中,我发现覆盖内联 HTML 视图设置的以下步骤如下:

tl;dr:步骤如下:

  1. 在临时目录中,创建horde/imp/config/mime_drivers.d/cPanel 所需的目录结构:

    mkdir -p /tmp/horde/imp/config/mime_drivers.d
    
  2. 在新目录中创建一个覆盖文件。我将其命名为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. 在以下位置创建目录.tar.gz的一个版本:/tmp/horde/var/cpanel/horde/overlay.tar.gz

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

    每次 Horde 更新时,cPanel 都应扩展此文件,重新添加您的配置覆盖。

  5. 将其移动/tmp/horde/imp/config/mime_drivers.d/到位:

    mv /tmp/horde/imp/config/mime_drivers.d /usr/local/cpanel/base/horde/imp/config/
    
  6. 登录Horde进行测试。

相关内容