CKEditor не работает при развертывании сайта в IIS

#asp.net-mvc #asp.net-mvc-4 #iis #ckeditor #bundle

#asp.net-mvc #asp.net-mvc-4 #iis #ckeditor #пакет

Вопрос:

Я использую CKEditor в своем приложении MVC.

Я использую пакет «ckeditor-full» (версия 4.4.2).

Я включил «ckeditoradaptersjquery.js «, и «ckeditorckeditor.js » файлы в пакете и ссылки на эти пакеты в файле _Layout.cshtml.

 @Scripts.Render("~/bundles/Scripts/ckeditor")
@Scripts.Render("~/bundles/Scripts/ckeditor/adapters")
  

Папка «Scripts/ckeditor» содержит все 352 файла, которые были загружены вместе с пакетом.

Следующее config.js файл (который находится в папке «Scripts / ckeditor».

 CKEDITOR.editorConfig = function( config )
{
    // Define changes to default configuration here. For example:
    config.toolbar = 'Custom';
    config.disableNativeSpellChecker = false;
    config.browserContextMenuOnCtrl = true;
    config.forcePasteAsPlainText = true;

    config.toolbar_Custom = [
        { name: 'basicstyles', items: ['Bold', 'Italic', 'Underline', 'Strike', '-', 'RemoveFormat'] },
        { name: 'paste', items: ['PasteText'] },
        { name: 'links', items: ['Link', 'Unlink'] }
    ];
};
  

Ниже показано, как я отображаю CKEditor для текстовой области:

 $("#idBodyText").ckeditor();
  

Проблема в том, что он отлично работает локально и при запуске в локальном IIS в режиме отладки. Однако он не отображает CKEditor при развертывании в IIS с конфигурацией выпуска.

Есть идеи, что может быть возможной причиной и как это решить?

Любая помощь по этому вопросу очень ценится.

Спасибо

Ответ №1:

В качестве решения оказалось, что мне пришлось включить следующую строку в моем представлении перед загрузкой пакетов —

 <script type="text/javascript">
    CKEDITOR_BASEPATH = "@Url.Content("~/Scripts/ckeditor/")";
</script>
  

Ответ №2:

Проверьте, как сгенерированы ваши пакеты stylesheet и scripts ссылки в источнике страницы:

 @Scripts.Render("~/bundles/Scripts/ckeditor")
@Scripts.Render("~/bundles/Scripts/ckeditor/adapters")
  

Это может быть проблема с HTTP Error 404 - File or Directory not found или 403.2 - Read access forbidden. — в этом случае вам следует проверить, правильно ли хранятся файлы в serwer (в правильном расположении) и проверить разрешения для этой папки.

Также полезным для отладки будет Firebug. Я настоятельно рекомендую его использовать.