0

我的客户使用的是 Joomla 3.7.2,他们使用的是 YOOTheme 的 Zoo 组件。他们创建了一个应用程序,我相信它被称为行话,并且他们添加了一个属性(元素),您可以在其中下载文件。

该应用程序是一个文章类型的应用程序,他们使用了默认的下载元素。我添加了上传某些文件的权限,并上传了一个 VCF 文件(一个 vCard 文件)。

当我下载该文件时出现问题。Joomla 似乎添加了 Content-Type:'text/x-vcalendar'。这应该是“文本/x-vcard”。我不知道在哪里改变这个。

我已将此 mime 类型添加到我的 .htaccess 中,因此当我直接链接到该文件时,apache 确实会发送正确的内容类型标头。因此,我知道问题出在 joomla 或返回错误 mime 类型的 PHP 函数上。

我在哪里可以更改这些文件的 mime 类型?

4

1 回答 1

0

我终于找到了。文件中有一个函数:/administrator/components/com_zoo/framework/helpers/filesystem.php

在这个文件中有一个名为 getMimeMapping 的函数。其中是一个数组,其中包含每个扩展名使用的所有文件扩展名和 mime 类型:

$mimes['vcf'][] = 'text/x-vcalendar';
$mimes['vcs'][] = 'text/x-vcalendar';
$mimes['vct'][] = 'text/x-vcard';

所以很明显,如果我使用扩展 vct,它将输出正确的 Content-Type。

于 2017-10-05T12:56:21.737 回答