Nano Hash - криптовалюты, майнинг, программирование

Неработающие образы BLOB-объектов Azure модуля Drupal

Я только начал создавать сайт Drupal с помощью Azure. Я установил модуль Azure Blob, и все работает правильно (в локальной среде), включая отображение и загрузку изображений в большой двоичный объект хранения. Однако после развертывания сайта и базы данных на промежуточном сервере все образы не работают. Я убедился, что изображения присутствуют, так как я загрузил их, работая локально. Я не могу определить, в чем проблема.

Модуль некоторое время не обновлялся, и я потратил некоторое время на изучение кода модуля, но безрезультатно. Мне было интересно, сталкивался ли кто-нибудь с подобными проблемами и, возможно, мог бы указать мне правильное направление. Заранее спасибо.


Ответы:


1

Наконец-то я смог понять, в чем проблема. Мне не удалось отобразить или загрузить изображения, когда все было развернуто в Azure, не зная, в чем именно заключается проблема, я прошел через процесс проб и ошибок, устраняя возможные причины одну за другой. Все сводится к внесению изменений в сам модуль. В файле "azure_blob.streamwrappers.inc" перейдите к функции createStorageClient. Вам нужно указать BlobEndpoint в конфигурации.

if (!isset(self::$clients[$scheme])) {
  // Obtain user configuration from database
  $configuration = ctools_export_crud_load('azure_blob', $scheme);

  if (isset($configuration)) {
    // @todo Use shared access signature to specify a specific blob endpoint
    $connection_string = 'DefaultEndpointsProtocol=https;AccountName=' .
      $configuration->account . ';AccountKey=' . $configuration->primary_key . ';BlobEndpoint=http://[StorageName].blob.core.windows.net/';

    self::$clients[$scheme] = 
      ServicesBuilder::getInstance()->createBlobService($connection_string);

    // Store other configuration properties in client object
    self::$clients[$scheme]->blob_container = $configuration->blob_container;
    self::$clients[$scheme]->cache_control = $configuration->cache_control;
  }
  else {
    throw new Exception(t('Invalid storage scheme "@stream"', array('@stream' => $scheme)));
  }
}

return self::$clients[$scheme];

Я надеюсь, что это поможет тому, кто столкнется с той же проблемой в будущем. Я буквально рвал на себе волосы, пытаясь найти решение в течение 2 дней :)

26.10.2014
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

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

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..