Почему Rails иногда создает кэш ресурсов с неправильными разрешениями? - PullRequest
0 голосов
/ 24 мая 2011

У меня есть экземпляр EC2 с обычным стеком Apache, Passenger и Rails.Приложение работает в рабочей среде, поэтому файлы Javascript кэшируются в файл all.js.

Пассажир настроен на предварительный запуск экземпляра приложения с использованием директивы PassengerPreStart .

Иногда all.js, созданный Rails в public/javascripts, имеет неправильные разрешения, 0600 для пользователя развертывания.Предполагается, что это будет 0640, чтобы Apache мог обслуживать файлы (они находятся в одной группе, www-data).

У вас есть какое-либо объяснение, почему это происходит?Известны ли какие-либо проблемы с PassengerPreStart и кэшированием ресурсов в Rails?

1 Ответ

0 голосов
/ 24 мая 2011

Я почти уверен, что это из-за временных меток, следующих за активами. Если вы выполняете просмотр источника, числа после ресурса / файлов являются временной меткой, и я думаю, что браузеры запутались, или rails испортили это или что-то в этом роде.

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

/application.rb

ENV[RAILS_ASSET_ID] = ""

Это установит пустую строку. Посмотрите, как это происходит.

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