Рейтинг:0

Ссылка на изображения в представлении формы создает неверный URL-адрес

флаг cn

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

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

Бэкенд-аспект при загрузке изображений

Например, как вы можете видеть, изображение твиттера работает правильно (оно было показано в бэкенде), но если я перехожу по ссылке «twitter.jpg» над изображением, оно отправляет меня на:

<a href="/https%3A//test-web-development.s3.eu-west-1.amazonaws.com/s3fs-public/2022-01/twitter.jpg" type="image/jpeg">twitter.jpg</a>

Большая проблема заключается в том, что он добавляет «/» перед самой ссылкой на изображение, а не просто использует сам URL-адрес. Кроме того, он пишет «безопасный для URL», поэтому «https://» преобразуется в «https% 3A//».

Согласно отладке, он использует этот шаблон, и я не вижу в нем ничего странного (пробовал и другую тему, но все равно не получилось):

<!-- BEGIN OUTPUT from 'core/themes/claro/templates/field/file-link.html.twig' -->

Любая идея о том, что может быть причиной этого?

флаг cn
Проверьте модуль S3/cloud front, если он выполняет предварительную обработку.
Рейтинг:2
флаг sa

Я думаю, что ваша проблема такая же, как описанная здесь: https://www.drupal.org/project/drupal/issues/3254553

Кажется, теперь это исправлено с помощью этой фиксации: https://git.drupalcode.org/project/drupal/-/commit/879b39ee5c5

Если обновление ядра Drupal вам не поможет, попробуйте временно использовать некоторые из рабочих патчей в ветке проблемы, пока само ядро ​​Drupal не решит эту проблему за вас.

zapico avatar
флаг cn
Большое спасибо!!! Это действительно похоже на точную проблему, но я думаю, что подожду до следующего выпуска патча, чтобы установить ее :)
флаг sa
Я рад, что это помогло ;)

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.