Не формируются эскизы изображений «на лету»: как исправить

Формирование эскизов изображений «на лету» зависит от правильной работы серверных компонентов: установленного и правильно настроенного модуля mod_rewrite (как проверить) при использовании веб-сервера Apache либо nginx + FastCGI, для которого рекомендуем использовать в качестве примера проверенную конфигурацию.

Ниже перечислены несколько часто встречающихся ошибок конфигурации, мешающих правильному формированию эскизов.

1. Сайт работает на Apache, а запросы к изображениям обрабатываются nginx в обход Apache.

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

Варианты решений:

  • изменить конфигурацию хостинга, заставляющую обрабатывать запросы к изображениям в обход Apache
  • использовать рекомендуемую конфигурацию для веб-сервера nginx

2. На хостинге включена функция создания автоподдоменов

Эта функция изменяет значения серверных переменных, нарушая правильную работу формирования эскизов изображений в Webasyst. Для устранения проблемы создание автоподдоменов нужно отключить.

3. Права доступа к директории с файлами эскизов не позволяют создавать новые файлы

Проверьте, чтобы пользователь сервера, от имени которого исполняются PHP-скрипты Вебасиста, имел полномочия для создания новых файлов и поддиректорий в директориях для хранения эскизов.

Для Shop-Script: wa-data/public/shop/products/
Для «Фото»: wa-data/public/photos/

4. Отсутствует оригинальное изображение

Если на сервере больше нет загруженного вами изображения, то не из чего формироваться эскизам. В этом случае нужно загрузить изображение заново.

5. Отсутствуют или повреждены файлы, ответственные за формирование эскизов

Проверьте наличие и корректное содержимое важных файлов.

Для Shop-Script:

  • wa-data/public/shop/products/.htaccess
  • wa-data/public/shop/products/thumb.php

Для «Фото»:

  • wa-data/public/photos/.htaccess
  • wa-data/public/photos/thumb.php
Содержимое оригинальных файлов можно получить из резервной копии файлов вашего сайта, хранящейся на сервере (хостинге). Оригинальные версии файлов можно также получить, временно установив эти приложения в отдельную папку на тестовом (локальном) сервере.

10 комментариев

  • +1
    artur-er artur-er 17 июля 2015 08:44 #

    ничего не помогло. Проблема осталась.

    • +1

      Иногда на хостинге формируются некорректные значения серверых переменных при запросе ещё не существующих эскизов, из-за чего эскизы и не формируются. В статье перечислены лишь наиболее часто встречающиеся причины этой проблемы. Возможны разные частные случаи, которые не опишешь в статье из-за их очень индивидуального характера. Если вам не удастся самостоятельно решить проблему, вам помогут специалисты службы поддержки Webasyst, куда можно обратиться за расширенной диагностикой.

    • +1
      996 996 16 августа 2015 17:10 #

      А когда при загрузке файлов SS6 пытается загрузить файлы с одним именем, а по факту на сервер сохраняет с другим именем — это тоже мой косяк и надо платить 1000р за исправление?)))

    • +2
      Морозов Морозов 11 ноября 2015 12:03 #

      Добрый день. Подскажите Как проверить? Что там должно быть написано из 5 пункта

      5. Отсутствуют или повреждены файлы, ответственные за формирование эскизов

      Проверьте наличие и корректное содержимое важных файлов.

      Для Shop-Script:

      • wa-data/public/shop/products/.htaccess
      • wa-data/public/shop/products/thumb.php

      Для «Фото»:

      • wa-data/public/photos/.htaccess
      • wa-data/public/photos/thumb.php
      • +1
        Юзверь Юзверь 9 декабря 2015 06:48 #

        Так же хотелось понимать, что там может быть не корректно в 5 пункте, почему бы не выложить сюда корректный код

      • +1
        Михаил Ушенин Михаил Ушенин Webasyst 9 декабря 2015 07:34 #

        Этот код может время от времени изменяться, поэтому публикация его в статье только вводила бы в заблуждение.

        Чтобы узнать, какой код считается корректным, достаточно установить приложение на тестовый (локальный) сервер и посмотреть содержимое файла там.

      • +1
        partner2000 partner2000 16 марта 2016 04:17 #

        Ну а всё же что должно быть в файле thumb.php. По этому пути

        • wa-data/public/shop/products/thumb.php
        • +2
          artur-er artur-er 17 марта 2016 01:36 #

          Для файла .htaccess

          <ifModule mod_rewrite.c>

          RewriteEngine On

          RewriteCond %{REQUEST_FILENAME} !-f

          RewriteRule ^(.*)$ thumb.php [L,QSA]

          </ifModule>

          Options -MultiViews

          Для файла wa-data/public/shop/products/thumb.php

          <?php

          $file = realpath(dirname(__FILE__)."/../../../../")."/wa-apps/shop/lib/config/data/thumb.php";

          if (file_exists($file)) {

          include($file);

          } else {

          header("HTTP/1.0 404 Not Found");

          }

          Добавить комментарий

          Чтобы добавить комментарий, зарегистрируйтесь или войдите