Есть 2 сайта одной тематики. Ассортимент большой (более 10.000 товаров). Фотографии одни и те же используются. Итого получается оригинальные фото 2 копии и ещё в кэше всё это повторяется - в итоге занимает уйму места. Можно это как то оптимизировать?
А что если в конфигах руками пути изменить? define('DIR_IMAGE', '/var/www/путь до сайта/сайт.ру/image/');
cereberlum, ну у меня лично это простое исправление не срабатывает - выскакивают ошибки и папка image в итоге пустая.
Если на одном хостинге должно заработать, проверяй пути, сайты же от одного имени пользователя работают? Ну всмысле доступ то в каталог имеют?
Всёравно не работает. Получается что - в менеджере изображений появляются папки и файлы изображений, но не имеют картинку и если выбрать, то на сайте они не отобразятся - пути всёравно к стандартной папке image/cache/ Я так понимаю, что где то ещё нужно исправлять пути, а не только в конфигах.
Там всё не так просто. Я когда-то пробовал в конфиге просто прописать путь к одной и той же директории для обоих сайтов, этого мало. Мне это нужно было, чтоб для рабочей и тестовой версии не хранить фотографии отдельно, так что я не стал ковырять код, чтоб заставить это работать и ограничился частичной копией фотографий.
Я уже понял, что не просто. Но у меня 2 магазина с одинаковой продукцией на 14500 товаров. Хостинг уже лопается. Видимо прийдется расширять хостинг.
Этого мало. Нужно ещё /model/tool/image.php подправить. В оригинале там ссылка формируется от текущего домена из конфига. Если нету, значит не используется. И даже если б было, не факт, что использовалось бы. Этот параметр иногда проскакивает в конфигах, но я ни разу не видел его использование в модели image. Update: Самому стало интересно и решил таки допилить это решение. Итак. в файлах конфигов на фронтэнде и в админке редактируем или добавляем параметры: PHP: define('HTTP_IMAGE', 'http://domain.com/image/');define('HTTPS_IMAGE', HTTP_IMAGE); Здесь должен быть домен, на котором лежат изображения. Дальше проверяем параметр DIR_IMAGE - там должен быть для обоих сайтов путь к одной и той же папке на сервере, где лежат общие изображения. Теперь редактируем модель /model/tool/image.php в директориях admin и catalog: Находим там такой код (может немного отличаться): PHP: if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) { return $this->config->get('config_ssl') . 'image/' . $new_image; } else { return $this->config->get('config_url') . 'image/' . $new_image; } Заменяем на: PHP: if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) { return HTTPS_IMAGE . $new_image; } else { return HTTP_IMAGE . $new_image; } На этом всё. Важно: не забудьте проверить права на директорию сайта, который будет основным (именно сайта, а не только папки image), должно быть минимум 764!