gpt4 book ai didi

image - TYPO3:cObj->IMAGE 未生成图像

转载 作者:行者123 更新时间:2023-12-03 05:47:12 25 4
gpt4 key购买 nike

我有一个扩展,我需要在其中生成缩略图。为此,我编写了一种包装函数。

public static function pictureGenerator($file, $title, $size_w, $size_h) {
$cObj = t3lib_div::makeInstance('tslib_cObj');
$imgTSConfig = array();
$imgTSConfig['file'] = $file;
$imgTSConfig['file.']['width'] = $size_w . 'm';
$imgTSConfig['file.']['height'] = $size_h . 'm';
$imgTSConfig['altText'] = empty($title) ? 'preview' : $title;
$imgTSConfig['titleText'] = empty($title) ? 'preview' : $title;

return $cObj->IMAGE($imgTSConfig);
}

只要我使用相对于 TYPO3-Directory 的路径,此函数就可以正常工作:例如:../typo3conf/ext/sd_filmbase/res/images/default_film.jpg

但是一旦我尝试使用如下所示的绝对系统路径,就不再生成图片,并且“return $cObj->IMAGE($imgTSConfig)”返回 NULL。< br/>/var/www/vhosts/domain.com/httpdocs/path/to/picture/c.example.hq.jpg
此路径位于 TYPO3-Install-Directory 之外 - 但包含在 open_basedir 中(并且 safe_mode 处于关闭状态)。

我将以下路径添加到 open_basedir:/var/www/vhosts/domain.com/httpdocs/path/
如果该文件可以从我的扩展中读取,我使用 is_read() 进行了测试 - 并且它返回 true。
安装工具中的图像处理工作正常。

你知道我还能测试什么吗?或者我错过了一些重要的东西?

顺便说一句:我正在运行 TYPO3 4.6.1 和 PHP 5.3。

解决方案:
在 Web 目录中创建指向外部路径的符号链接(symbolic link)。此符号链接(symbolic link)必须位于 fileadmin/或typo3conf/
内另请参阅 konsolenfreddy 的帖子。

最佳答案

IMAGE函数总是期望一个相对于 PATH_site 的文件要么在 typo3conffileadmin (请参阅 getFilename 中的 t3lib_tstemplate 函数)。

如果您想在文档根目录之外拥有图像,可以想到两种方法:

  1. 将符号链接(symbolic link)放入typo3conf内的目录中或fileadmin ,例如fileadmin/myimages/ ,通过 .htaccess 保护目录内容
  2. 直接使用Gifbuilder功能。这可能很麻烦,并且可能会禁用cObject中的一些更高级别的缓存。 。

关于image - TYPO3:cObj->IMAGE 未生成图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8543958/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com