[Решено] Одна папка image на 2 сайта

Тема в разделе "OpenCart", создана пользователем Oleg-vt, 9 мар 2015.

  1. Oleg-vt

    Oleg-vt

    Регистрация:
    8 май 2013
    Сообщения:
    211
    Симпатии:
    165
    Есть 2 сайта одной тематики. Ассортимент большой (более 10.000 товаров). Фотографии одни и те же используются.

    Итого получается оригинальные фото 2 копии и ещё в кэше всё это повторяется - в итоге занимает уйму места. Можно это как то оптимизировать?
     
    Последнее редактирование: 9 мар 2015
  2. cereberlum

    cereberlum

    Регистрация:
    26 май 2013
    Сообщения:
    756
    Симпатии:
    269
    А что если в конфигах руками пути изменить?
    define('DIR_IMAGE', '/var/www/путь до сайта/сайт.ру/image/');
     
  3. Oleg-vt

    Oleg-vt

    Регистрация:
    8 май 2013
    Сообщения:
    211
    Симпатии:
    165
    cereberlum, ну у меня лично это простое исправление не срабатывает - выскакивают ошибки и папка image в итоге пустая.
     
  4. black_kasper

    black_kasper

    Регистрация:
    5 окт 2013
    Сообщения:
    82
    Симпатии:
    45
    сайты находятся на одном хостинге ?
     
  5. Oleg-vt

    Oleg-vt

    Регистрация:
    8 май 2013
    Сообщения:
    211
    Симпатии:
    165
  6. Копост

    Копост

    Регистрация:
    24 янв 2015
    Сообщения:
    35
    Симпатии:
    0
    Если на одном хостинге должно заработать, проверяй пути, сайты же от одного имени пользователя работают? Ну всмысле доступ то в каталог имеют?
     
  7. Oleg-vt

    Oleg-vt

    Регистрация:
    8 май 2013
    Сообщения:
    211
    Симпатии:
    165
    Что есть доступ в каталог? Прописаный путь в конфигах?
     
  8. Копост

    Копост

    Регистрация:
    24 янв 2015
    Сообщения:
    35
    Симпатии:
    0
    Папку где хранятся изображения
     
  9. black_kasper

    black_kasper

    Регистрация:
    5 окт 2013
    Сообщения:
    82
    Симпатии:
    45
    все правильно
    два файла config.php посмотри и там нужно будет прописать
     
  10. Oleg-vt

    Oleg-vt

    Регистрация:
    8 май 2013
    Сообщения:
    211
    Симпатии:
    165
    Всёравно не работает. Получается что - в менеджере изображений появляются папки и файлы изображений, но не имеют картинку и если выбрать, то на сайте они не отобразятся - пути всёравно к стандартной папке image/cache/
    Я так понимаю, что где то ещё нужно исправлять пути, а не только в конфигах.
     
  11. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    3.198
    Симпатии:
    1.306
    Там всё не так просто. Я когда-то пробовал в конфиге просто прописать путь к одной и той же директории для обоих сайтов, этого мало. Мне это нужно было, чтоб для рабочей и тестовой версии не хранить фотографии отдельно, так что я не стал ковырять код, чтоб заставить это работать и ограничился частичной копией фотографий.
     
  12. Oleg-vt

    Oleg-vt

    Регистрация:
    8 май 2013
    Сообщения:
    211
    Симпатии:
    165
    Я уже понял, что не просто. Но у меня 2 магазина с одинаковой продукцией на 14500 товаров. Хостинг уже лопается. Видимо прийдется расширять хостинг.
     
  13. halfhope

    halfhope

    Регистрация:
    31 дек 2012
    Сообщения:
    284
    Симпатии:
    309
    Насколько помню, нужно менять только DIR_IMAGE и HTTP_IMAGE, и должно заработать.
     
  14. Oleg-vt

    Oleg-vt

    Регистрация:
    8 май 2013
    Сообщения:
    211
    Симпатии:
    165
    HTTP_IMAGE ? Это где такое? В конфиг файлах такого нет.
     
  15. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    3.198
    Симпатии:
    1.306
    Этого мало. Нужно ещё /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!
     
    ashtray, halfhope, buldozer и ещё 1-му нравится это.
  16. Oleg-vt

    Oleg-vt

    Регистрация:
    8 май 2013
    Сообщения:
    211
    Симпатии:
    165
    Dotrox, не работает. Я же правильно понимаю - всё ниже прописывается для обоих сайтов?
     
  17. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    3.198
    Симпатии:
    1.306
    Проблемы с правами на директорию основного сайта.
     
    Последнее редактирование: 14 авг 2015