2015-12-15 2 views
0

У меня есть следующая структура папок в rails app.Amazon cloudfront дает разные активы для разных пользователей?

|-assets 
    |-javascript 
    |-lib 
     bootstrap.js 
     jquery.js 
    application.js 
    |-styleesheet 
    |-lib 
     bootstrap.js 
    application.js 

Статические активы размещены в облачном режиме разными людьми. Я не знаю, как это было сделано.

Я дал следующую конфигурацию в production.rb.

config.serve_static_files = ENV['RAILS_SERVE_STATIC_FILES'].present? 
config.assets.compile = true 
config.action_controller.asset_host = 'cloudfront url' 

В видовой Странице она будет выглядеть следующим образом:

<%[application,lib/bootstrap].each do |css_url| %> 
    <%= stylesheet_link_tag css_url%> 
<%end%> 

<%[application,lib/bootstrap,lib/jquery].each do |js_url| %> 
    <%= javascript_include_tag js_url%> 
<%end%> 

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

+0

Какие активы (отпечатки пальцев и имена) пользователей загрузить подаются по вашему приложению? Все ли пользователи говорят загружать одни и те же активы? Покажите нам больше о настройке * cloudfront *. Cloudfront просто серверы или нет (с ошибкой) ресурс, запрашиваемый пользователем, но это рельсы, которые сообщают пользователю URL-адрес этого ресурса) – Leito

+0

@Leito Извините, где мы застряли Настройка Rails и настройка облачного режима, выполненная разными людьми У меня нет доступа к этому. Я хочу, чтобы с моей стороны не было ошибок. Я обновил вопрос с данными конфигурации. Пожалуйста, перейдите через него. – Praveenkumar

ответ

0

Ваш вопрос не очень ясен, но убедитесь, что оба пользователя получают одинаковые отпечатки пальцев в файлах. Если отпечатки пальцев не совпадают с вероятностью ошибки не с облачным флагом, но что-то не так с вашим приложением rails.

Наиболее вероятной причиной этой ошибки является то, что работают несколько рабочих приложений (некоторые обслуживают старые активы и некоторые новые).

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

+0

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

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