Moved CakePHP 1.3.8 Установка образа Проблема

0

Я пытаюсь переместить старую установку CakePHP 1.3.8 между серверами и проблемы с отображением определенных изображений.

Старый сервер: Ubuntu 14.04.5 LTS Apache 2.4.7 MySQL 5.5 PHP 5.5.9 PHP (GD, MYSQL)

Новый сервер: Centos 7.5.1804 Apache 2.4.6 MySQL 5.4 PHP 5.4 PHP (GD, MYSQL)

Я проверил, что DocumentRoot указывает на каталог Cake/app/webroot, а также имеет директиву AllowOverride All в конфигурации сайтов. Также проверены файлы (3).htaccess, mod_rewrite и т.д.

Отладка установлена на "2" в core.php, но единственная зарегистрированная ошибка касается функции изображения:

imagejpeg() [<a href='http://php.net/function.imagejpeg'>function.imagejpeg</a>]: Filename cannot be empty

Примеры того, что происходит в каждом проекте page-

Рабочий сайт

Нерабочий сайт

Все остальное, включая доступ к базе данных, работает. Я почти ничего не знаю о cakephp, но просматривая различные файлы, мне кажется, что эта функция вызывается из файла "detail.ctp" в каталоге views/projects:

<?php echo $html->image('/App/ContentImageView/'.$image3.'/250/400',array('title'=>'Project Image', 'id'=>'MainImg', 'alt'=>'Project I    mage', 'class'=>'border2')); ?>

И функция из app_controller.php

function ContentImageView($img_path, $w = '75', $h = '75'){
    Configure::write('debug', 2);
    debug($img_path, $showHTML = true, $showFrom = true);
if (empty($img_path)) return;
    $image = str_replace('@@', '/', $img_path);
    if (empty($image)) return;
    $this->autoLayout = false;
    $this->autoRender = false;
    if(empty($image)) return;
    //image resize parameters
    $FileConfig = array();
    $FileConfig['source_image'] = WWW_ROOT . '/'. $image;
    $FileConfig['dynamic_output'] = true;
    $FileConfig['maintain_ratio'] = true;
    $FileConfig['width'] = $w;
    $FileConfig['height'] = $h;
    ini_set('memory_limit', -1)
    $this->ImageLib->clear();
    $this->ImageLib->set($FileConfig);
    $this->ImageLib->resize()
}

Весь код отлично работает на старом сервере, поэтому я думаю, что это какая-то проблема с конфигурацией, но я просто не могу на нее наложить.

Спасибо всем.

  • 0
    Вы сравнивали атрибут src изображений между рабочей и нерабочей страницами? Проверьте, правильно ли указан путь к изображению и хранится ли изображение на сервере в указанной папке.
  • 0
    Что такое $this->ImageLib ( debug(get_class($this->ImageLib)) )? Возможно, он использует какой-то модуль PHP, такой как gd который установлен на старом сервере, но не новый?
Показать ещё 4 комментария
Теги:
cakephp

1 ответ

0

Я устанавливаю Centos 6.9 VM с PHP 5.3.3, и проблема отсутствует. Должно быть изменение PHP, как указывал ndm. Вместо того, чтобы пытаться выяснить, где код должен быть обновлен, мы продвигаемся вперед на Centos 6.9, так как этот сайт скоро будет удален.

Еще раз спасибо всем, кто ответил.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню