Joomla Zoo下载元素错误的内容类型或mime类型的vcard(.vcf)

时间:2017-08-30 13:55:36

标签: php joomla mime-types vcard yoothemes

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

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

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

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

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

1 个答案:

答案 0 :(得分: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。