Медиа-файл библиотеки Kentico недоступен на сайте MVC - PullRequest
0 голосов
/ 24 января 2020

Я создаю файл библиотеки мультимедиа Kentico, используя Kentico API 11.0.26. CMS и приложение MVC находятся на веб-ферме. Оба находятся в исправном состоянии.

Файл создается нормально, но доступен только в приложении CMS, но не на веб-сайте MVC. Это верно как для прямой ссылки, так и для постоянной ссылки.

При копировании / вставке постоянной ссылки в браузере, которой предшествует домен MVC, выдается следующее сообщение: «Ресурс, который вы ищете, был удален, изменилось его имя или временно недоступен».

Может ли кто-нибудь объяснить, что означает "тот же самый ООН C root определен" в этом разделе:

Если вы работаете с системой в веб-ферме и иметь одинаковый UN C root, определенный на всех серверах, необходимо добавить следующий ключ в ваш файл web.config. Файлы, хранящиеся в библиотеках, не переносятся при синхронизации содержимого веб-фермы:

<add key="CMSWebFarmSynchronizeMediaFiles" value="false"/>

https://docs.kentico.com/k12/configuring-kentico/configuring-the-environment-for-content-editors/configuring-media-libraries

1 Ответ

0 голосов
/ 24 января 2020

UN C (универсальное соглашение об именах) - это стандарт для идентификации сервера / машины в сети, используемый следующим образом: \\ server-name \ rest of path

В Kentico вы бы использовать UN C, чтобы сообщить Kentico, где вы храните файлы библиотеки мультимедиа, если он находится на другом сервере в сети.

Первое, что пришло в голову, почему вы получаете 404, это, вероятно, что медиа-URL имеет тильду (~) перед ним. Если это так, удалите эту тильду и посмотрите, решена ли проблема. Лично я делаю замену следующим образом:

MediaLibraryHelper.GetPermanentUrl(mediaLibraryFile).Replace("~/", "/")

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...