captcha在localhost中工作正常,但在Web服务器中没有

时间:2014-07-12 16:02:14

标签: captcha

这是我在captcha.php中的编码

<?php
/* captcha.php file*/

    session_start();

    header("Expires: Tue, 01 Jan 2013 00:00:00 GMT"); 
    header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); 
    header("Cache-Control: no-store, no-cache, must-revalidate"); 
    header("Cache-Control: post-check=0, pre-check=0", false);
    header("Pragma: no-cache");

    $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
    $randomString = '';

    for ($i = 0; $i < 5; $i++) 
    {
        $randomString .= $chars[rand(0, strlen($chars)-1)];
    }

    $_SESSION['captcha'] = strtolower( $randomString );


    $im = @imagecreatefrompng("captcha_bg.png"); 


    imagettftext($im, 30, 0, 10, 38, imagecolorallocate ($im, 0, 0, 0), 'larabiefont.ttf', $randomString);

    header ('Content-type: image/png');
    imagepng($im, NULL, 0);
    imagedestroy($im);

?>

有人可以帮我找到错误的地方吗??? 我已经更改了过期日期,但它仍然无效..请帮助我..

谢天谢地,我的英语是passif。

1 个答案:

答案 0 :(得分:0)

如果它在你的本地主机上工作正常,你可能在服务器中缺少一些库/其他配置吗?

也许你可以输出:

echo phpinfo();

并比较可能存在的差异......另外,请确保在服务器计算机上拥有所有必需的资源(例如larabiefont.ttf,captcha_bg.png)。