Codeigniter,如何在验证码设置中指定img_url?

时间:2016-02-10 16:02:51

标签: php codeigniter

大家好,我很难使用Codeigniter验证码库。我的网页中的浏览器没有显示任何验证码img文件,我认为这是img_url的问题,因为img文件位置是' http://localhost/blog/captcha/1455115990.3884.jpg'当我尝试直接访问它抛出浏览器时,我只是得到codeigniter默认的404窗口,但在我的web项目根文件夹codeigniter的captcha目录中成功创建了captcha img文件。我有什么不同的建议吗?

我的控制器

function post($postID){
    $this->load->model('comment');
    $data['comments']=$this->comment->get_comments($postID);
    $this->load->helper('form');

    $this->load->helper('captcha');

    $vals=array(
        'img_path'=> './captcha/',
        'img_url'=>base_url().'captcha/',
        'img_width'=>150,
        'img_height'=>30
    );
    $cap = create_captcha($vals);
    $this->session->set_userdata('captcha', $cap['word']);
    $data['captcha']=$cap['image'];

    $data['post']=$this->Post->get_post($postID);
    $this->load->view('post', $data);
}

查看

 <p>Captcha Code: <?=$captcha ?> <br /><?php
                    $data_form=array(
                        'name'=>'captcha'
                    );
                echo form_input($data_form);
                ?>

            </p>

感谢您的回答!

1 个答案:

答案 0 :(得分:1)

我的问题是在.htaccess文件中。我刚从

更改了它
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ index.php/$1 [L]

<IfModule mod_rewrite.c>

Options +FollowSymLinks
RewriteEngine on

# Send request via index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

</IfModule>

验证码正在运行!