【发布时间】:2012-07-13 01:19:04
【问题描述】:
在我的 Zend 应用程序中,我遇到了 Captcha 元素的异常问题。当我尝试查看我在本地机器上使用此 Captcha 元素的表单时,它工作正常,但是当我将它上传到我的 Debian 服务器时,它无法正常工作......!!!
区别如下:
正如您在 localhost 上看到的,验证码内的文本显示给用户,而在服务器 [Debian] 上,文本丢失了!!!!!!
我曾使用以下代码在我的 Zend 表单上创建验证码元素:
$elements = array();
$captchaElement = new Zend_Form_Element_Captcha('captcha',
array('label' => "Ihr generierter Textcode:",
'captcha' => array('captcha' => 'Image',
'name' => 'myCaptcha',
'wordLen' => 5,
'timeout' => 300,
'font' => 'verdana.ttf',
'imgDir' => 'captcha/',
'imgUrl' => '/captcha/')
)
);
$elements[] = $captchaElement;
foreach ($elements as $index => $element)
{
$element->setAttrib('tabindex', ($index + 1));
}
谁能告诉我我做错了什么...?
提前致谢.....
【问题讨论】:
-
生产服务器上有字体吗?
-
@bububaba : 是的,我在服务器上确实有 verdana.ttf 字体,但我不确定 Debian 是否支持它。
-
同stackoverflow.com/q/7001725/1145086,这在linux上的一些php版本中很常见。当前版本应该已修复,但您的主机可能尚未升级。
-
检查字体文件是否有读取权限。
标签: php zend-framework zend-form captcha zend-form-element