0

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

Я использую плагин JS (epiceditor), который требует, чтобы у меня было несколько статических файлов, которые js вызывает. В процессе разработки я могу легко получить доступ к файлам через конвейер активов.

В производстве я уже установил, чтобы статические активы служили истинными, но они все еще не отображаются.

config.serve_static_assets = true 

Файлы сохраняются в каталоге ресурсов:

- assets 
    - stylesheets 
     - epiceditor 

В развитии, она работает: enter image description here

В производстве, это не работает: enter image description here

JS Код для ввода css:

function _insertCSSLink(path, context, id) { 
    id = id || ''; 
    var headID = context.getElementsByTagName("head")[0] 
     , cssNode = context.createElement('link'); 

    _applyAttrs(cssNode, { 
     type: 'text/css' 
    , id: id 
    , rel: 'stylesheet' 
    , href: path 
    , name: path 
    , media: 'screen' 
    }); 

    headID.appendChild(cssNode); 
    } 

Что я вижу в консоли:

Resource interpreted as Stylesheet but transferred with MIME type application/json: "http://www.fulfilled.in/assets/epiceditor/epiceditor.css". application.js:30 
(anonymous function) 
+1

Какой сервер вы используете? Это происходит со всеми активами или только с некоторыми конкретными? Пробовали ли вы предварительно компилировать свои активы? Вы должны запустить RAILS_ENV = производственный пакет exec rake assets: precompile. –

ответ

2

Пара вещей.

1-й. Статические активы не имеют ничего общего с каталогом активов. Статические активы - это те, которые хранятся в общедоступном каталоге вашего приложения. Там, где конвейер активов компилирует активы.

2-й. Посмотрите в своем приложении/assets/stylesheets/application.css и посмотрите, нужен ли там эпицедитор, поэтому он будет предварительно скомпилирован вместе с другими активами. используйте ither require epiceditor/epiceditor или require_tree epiceditor или require_tree .. Последний будет скомпилировать все активы в вашей папке, кстати.

3-й. Используете ли вы http-сервер (Apache или Nginx) в производстве? Если это так, вы должны отключить службу static_assets, потому что он будет обрабатываться сервером и заглянуть в настройки вашего сервера.

Смежные вопросы