Здравствуйте. Проблема такая.
После переезда на свой сервер друпал напрочь отказывается создавать миниатюры, причем на всех сайтах сразу, на голом друпале тоже. То есть сама картинка грузится, открывается, а миниатюра выдает 404. Кроме друпала на сервере стоят сайты вордпресс и дле, там все работает корректно.
На сервере Apache 2.4+NGINX, PHP Version 5.6.14, GDI модуль стоит, права к папкам выставлены корректно.
Подскажите, пожалуйста, куда копать, т.к. у меня ни малейшей идеи.
Комментарии
https://www.nginx.com/resources/wiki/start/topics/recipes/drupal/
К сожалению, не помогло.
На всех папках 755, на файлах 644
Папка дефолт 555, файл сеттингс.пхп 444
Права выставлены корректно, проверял.
Хорошо, а картинки в папках точно есть?
Была ваша ситуация не раз, но навскидку умнее выгляжу если промолчу.
Прикол в том, что самих файлов-миниатюр как раз и нет, но полноразмерные есть. Т.е. сами картинки загружаются корректно, а вот миниатюры не создаются.
/admin/config/media/file-system чисто ли здесь всё?
Заскринил. На саму папку files права 0775, выставлял 0755 разницы нет.
P.S. В самой папке files картинки есть - я просто так обрезал.
Запишите здесь tmp
перед тем как это делать, "откройте двери" то есть - дайте 777 сайтес-дефолт-файлес, после того как здесь - /admin/config/media/file-system не будет выделена красной рамкой ошибка, поставьте старые значения прав у папок.
Если всё это не поможет, произведите обратные действия, дабы не обвинять меня в нанесении преднамеренного ущерба )
Выставил, двери открыл, красной обводки не было, миниатюры не создаются.
Выставил, двери открыл, красной обводки не было, миниатюры не создаются.
А что в логах есть интересного?
В том и дело, что там пусто.
Знать серверные логи, самое интересное в нашем деле, видно кто, что, когда, и почему облом. Всё упрощается в разы.
Вы про логи друпала или именно про серверные апачевские логи?
по идее проблемы с миниатюрами должны отразиться в логах друпала, т.к. в серверные по умолчанию в основном попадают только белые экраны.
/admin/reports/dblog
/admin/reports/access-denied
На сервере, в акке пользователя в корне сервера папка logs там эррор и ассесс сайта.
Логи в админке можно сказать пусты (там есть записи, но к данной проблеме они не относятся).
эррор.лог тоже пуст.
есть только в ацесс.лог следующие записи
ip - - [07/Jun/2016:22:24:00 +0300] "POST /file/ajax/field_image/und/0/form-XpFNNVdWoCSEwWih9kj25OM5C1Zr4flTyJLgOy8rngs HTTP/1.0" 200 2919 "http://site.ru/node/149/edit?destination=admin%2Fcontent&render=overlay" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36"
ip - - [07/Jun/2016:22:24:13 +0300] "POST /file/ajax/field_image/und/0/form-XpFNNVdWoCSEwWih9kj25OM5C1Zr4flTyJLgOy8rngs HTTP/1.0" 200 2675 "http://site.ru/node/149/edit?destination=admin%2Fcontent&render=overlay" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36"
IP и домен я затер
попробуйте в .htaccess
заменить
Options +FollowSymLinks
на
Options +SymLinksIfOwnerMatch
на джино я делаю так в .htaccess, который лежит в папке картинок (/sites/default/files или какая у вас в настройках ).
Options None
#Options +FollowSymLinks
Options +SymLinksIfOwnerMatch
..
..
Тоже мимо. Картинка залилась, миниатюра не создалась.
1.В стилях смотрели? Что там?
2. Зачем вам эти миниатюры вообще, из принципа?
3.Возможно в текстовом скайпе могу помочь.
В стилях есть картинки, миниатюры, но я их вручную через фтп заливал - чтоб на сайте не было видно проблемы.
Миниатюры вроде как нужны для масштабирования, нет? Скайп zak20135
Решено.
сервер настроен как nginx+apache, nginx отдает статику. сам друпал генерирует миниатюру только при обращении к этой самой миниатюре. там только при обращение к файлу срабатывает скрипт генерации. соответственно при заливке nginx в обход пхп сразу отдавал файл миниатюры, которая сгенерироваться не успела
location ~* files/styles {
proxy_pass http://127.0.0.1:8002;
proxy_set_header Host $host;
proxy_set_header
X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_connect_timeout 120;
proxy_send_timeout 120;
proxy_read_timeout 180;
}
добавил вот такое правило и все заработало
была такая же проблема, все оказалось очень просто у меня, я обнавлял друпал и в папке /sites/default/files в файле .htaccess надо было удалить строчку
Deny from all
Поставьте пожалуйста - решено