Drupal 9 не создает файлы стилей изображений.

Главные вкладки

Аватар пользователя SVictor SVictor 1 апреля 2021 в 8:46

Здравствуйте,
Подскажите, пожалуйста, может быть кто-то уже встречался с проблемой.
После установки Drupal 9 все прекрасно работает но файлы стилей изображений для полей field_image (файлы загружаются, но файлов стилей нет в /sites/default/files/styles) не создаются. Можно было бы подумать на разрешение папки или настройки хостинга, но если пытаешься проверить непосредственно через конфигурацию стилей изображений в админке (/admin/config/media/image-styles) - то там все работает.
Т.е. для field_image - не работает, а через конфигурацию все нормально работает?

Комментарии

Аватар пользователя marassa marassa 1 апреля 2021 в 10:30

SVictor wrote: файлы стилей изображений для полей field_image (файлы загружаются, но файлов стилей нет в /sites/default/files/styles) не создаются

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

Аватар пользователя SVictor SVictor 1 апреля 2021 в 19:53

Файлы стилей формируются по мере необходимости, т.е. когда нужен определенный стиль создается данный файл. Вот этот файл стиля и не создается, при этом оригинал нормально загружается.

Аватар пользователя adano adano 1 апреля 2021 в 14:35

Видел такое, только на сайтах с возрастом более 5 лет.
Причин реально может быть море: от веб-сервера, вплоть до абсурдных: включить/выключить ЧПУ (clean urls) в Друпале.

Аватар пользователя SVictor SVictor 1 апреля 2021 в 19:55

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

Аватар пользователя SVictor SVictor 1 апреля 2021 в 21:06

Все же дело было в настройках хостинга.
Пришлось удалить из
www/web/sites/default/files/.htaccess
код
Options -Indexes -ExecCGI -Includes -MultiViews
Но затем я просто заменил на
Options -Indexes -Includes -MultiViews

Аватар пользователя marassa marassa 1 апреля 2021 в 21:13

Странно, потому что это не настройки хостинга, а стандартные настройки Друпала, и с ними все должно работать (у меня например работает). Дело в чем-то другом.

Аватар пользователя SVictor SVictor 1 апреля 2021 в 21:38

В реальности я не знаю в чем причина.
Не хотело работать выключение -ExecCGI . Как только убрал заработало, если поставить обратно перестает.
Я не знаю почему. Не хочется долго изучать вопрос настройки на хостинге, но именно удаление этой опции помогло.
Думаю в 99.9 процентах будет работать без изменений, но у меня так.

Аватар пользователя marassa marassa 1 апреля 2021 в 21:45

А надо бы разобраться почему. Никаких скриптов в директории /sites/default/files быть не должно, отсутствие файла стилизованной картинки отрабатывается index.php в корне сайта, там свой .htaccess. Разрешение выполнения скриптов в общедоступной директории public - это как минимум зияющая дыра в безопасности.
PS Я там выше спрашивал что в логах, так и не получил ответа.

Аватар пользователя ogo ogo 12 июля 2022 в 19:25

Столкнулся с этим на новой установке, композитором на опен сервере( php 8), раньше из архива устанавливал на php 7.4, с таким не сталкивался, решение не нашлось?
/web/sites/default/files/styles - пуста! Изображения загруженные через редактор нормально отображаются , совет с .htaccess не помогает(. После сохранения ноды:

Deprecated function: openlog(): Passing null to parameter #3 ($facility) of type int is deprecated in Drupal\syslog\Logger\SysLog->openConnection() (line 56 of D:\OpenServers\domains\dr9\web\core\modules\syslog\src\Logger\SysLog.php)
#0 D:\OpenServers\domains\dr9\web\core\includes\bootstrap.inc(347): _drupal_error_handler_real()
#1 [internal function]: _drupal_error_handler()
#2 D:\OpenServers\domains\dr9\web\core\modules\syslog\src\Logger\SysLog.php(56): openlog()
#3 D:\OpenServers\domains\dr9\web\core\modules\syslog\src\Logger\SysLog.php(75): Drupal\syslog\Logger\SysLog->openConnection()
#4 D:\OpenServers\domains\dr9\web\core\lib\Drupal\Core\Logger\LoggerChannel.php(127): Drupal\syslog\Logger\SysLog->log()
#5 D:\OpenServers\domains\dr9\vendor\psr\log\Psr\Log\LoggerTrait.php(99): Drupal\Core\Logger\LoggerChannel->log()
#6 D:\OpenServers\domains\dr9\web\core\modules\node\src\NodeForm.php(280): Drupal\Core\Logger\LoggerChannel->notice()
#7 [internal function]: Drupal\node\NodeForm->save()
#8 D:\OpenServers\domains\dr9\web\core\lib\Drupal\Core\Form\FormSubmitter.php(114): call_user_func_array()
#9 D:\OpenServers\domains\dr9\web\core\lib\Drupal\Core\Form\FormSubmitter.php(52): Drupal\Core\Form\FormSubmitter->executeSubmitHandlers()
#10 D:\OpenServers\domains\dr9\web\core\lib\Drupal\Core\Form\FormBuilder.php(592): Drupal\Core\Form\FormSubmitter->doSubmitForm()
#11 D:\OpenServers\domains\dr9\web\core\lib\Drupal\Core\Form\FormBuilder.php(320): Drupal\Core\Form\FormBuilder->processForm()
#12 D:\OpenServers\domains\dr9\web\core\lib\Drupal\Core\Controller\FormController.php(73): Drupal\Core\Form\FormBuilder->buildForm()
#13 [internal function]: Drupal\Core\Controller\FormController->getContentResult()
#14 D:\OpenServers\domains\dr9\web\core\lib\Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber.php(123): call_user_func_array()
#15 D:\OpenServers\domains\dr9\web\core\lib\Drupal\Core\Render\Renderer.php(564): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}()
#16 D:\OpenServers\domains\dr9\web\core\lib\Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber.php(124): Drupal\Core\Render\Renderer->executeInRenderContext()
#17 D:\OpenServers\domains\dr9\web\core\lib\Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber.php(97): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext()
#18 D:\OpenServers\domains\dr9\vendor\symfony\http-kernel\HttpKernel.php(158): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}()
#19 D:\OpenServers\domains\dr9\vendor\symfony\http-kernel\HttpKernel.php(80): Symfony\Component\HttpKernel\HttpKernel->handleRaw()
#20 D:\OpenServers\domains\dr9\web\core\lib\Drupal\Core\StackMiddleware\Session.php(58): Symfony\Component\HttpKernel\HttpKernel->handle()
#21 D:\OpenServers\domains\dr9\web\core\lib\Drupal\Core\StackMiddleware\KernelPreHandle.php(48): Drupal\Core\StackMiddleware\Session->handle()
#22 D:\OpenServers\domains\dr9\web\core\modules\page_cache\src\StackMiddleware\PageCache.php(106): Drupal\Core\StackMiddleware\KernelPreHandle->handle()
#23 D:\OpenServers\domains\dr9\web\core\modules\page_cache\src\StackMiddleware\PageCache.php(85): Drupal\page_cache\StackMiddleware\PageCache->pass()
#24 D:\OpenServers\domains\dr9\web\core\lib\Drupal\Core\StackMiddleware\ReverseProxyMiddleware.php(48): Drupal\page_cache\StackMiddleware\PageCache->handle()
#25 D:\OpenServers\domains\dr9\web\core\lib\Drupal\Core\StackMiddleware\NegotiationMiddleware.php(51): Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle()
#26 D:\OpenServers\domains\dr9\vendor\stack\builder\src\Stack\StackedHttpKernel.php(23): Drupal\Core\StackMiddleware\NegotiationMiddleware->handle()
#27 D:\OpenServers\domains\dr9\web\core\lib\Drupal\Core\DrupalKernel.php(709): Stack\StackedHttpKernel->handle()
#28 D:\OpenServers\domains\dr9\web\index.php(19): Drupal\Core\DrupalKernel->handle()
#29 {main}
.