Я использую captcha для codeigniter, я отлично работаю на своем ПК, но почему-то, когда я загружался на сервер, он не генерировал изображение, я пытался с предложением из другого сообщения из stackoverflow, но он не работаетCodeigniter Captcha не отображается изображение
Я был чека ниже точек
- GD уже позволяет
- я уже делать CHMOD 755 для каталога активов с рекурсивным режимом
Пожалуйста, найдите ниже моего кода в контроллере
public function captcha_config() {
$this->load->helper(array('captcha','form'));
$vals = array(
'img_path' => '/var/www/html/assets/files/captcha/',
'img_url' => base_url().'assets/files/captcha/',
'img_width' => 150,
'img_height' => 30,
'expiration' => 7200
);
$cap = create_captcha($vals);
$this->session->set_userdata('capt',md5($cap['word']));
$image = $cap['image'];
//$data['captcha_img'] = $cap['image'];
//return $image;
var_dump($cap); //it shown bool(false)
}
результат
bool(false)
Я был изменить путь в этом ниже, но не работает.
./assets/files/captcha/
-------------------------- Обновление 06-04-2016 ----------- ---------------------
я получил еще один ключ
После того как я делать отладку в помощнике (captcha_helper) я изменить некоторые возвращают значение False, чтобы быть отладки Режим. это показано следующее сообщение об ошибке
Message: imagejpeg(/var/www/html/assets/files/captcha/1465012057.5767.jpg): failed to open stream: Permission denied
Я сделал изменить каталог искаженным быть CHMOD 777, но это, кажется, не работает.
Я сделал изменение собственности, чтобы быть apache, я использую этот скрипт, чтобы проверить право собственности из Интернета, но все еще не работает?
<?php echo exec('whoami'); ?>
Почему captcha не может писать в этот каталог?
Есть 4 места, где она возвращается false в функции 'create_captcha()'. Если путь/URL-адрес изображения не были установлены (ваш код установлен, это не проблема). Если путь к образцу не является каталогом (я надеюсь, что вы создали каталог, или это будут проблемы). Если путь к изображению не доступен для записи (я подозреваю, что это ваша проблема 0755 означает, что он доступен для записи вашим пользователем, но только для чтения/выполнения для других пользователей, для разрешения на изменение 0777). И, наконец, если GD lib не установлен (вы утверждаете, что это уже так не должно быть проблемой). Удачи :) – mic
вы пробовали этот 'assets/files/captcha /' –
@mic: я проверял путь, создавал каталог, делал каталог доступным для записи с помощью chmod 666, GD уже установил (я видел на PHP info), в чем проблема?, это запутывает –