2010-08-06 10 views
3

Это сделка.Rails InvalidAuthenticityToken в случайные моменты

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

Проблема в том, что они не меняют токен, они не аннулируют форму, они ничего не делают, кроме как писать в редакторе и нажимают кнопку submit!

Ошибка кажется совершенно случайной, иногда это случается, иногда это не так:/ Все, что я знаю, это то, что это происходит при редактировании или создании элемента, так что запросы POST или PUT, но проблема в том, он не находится на одной конкретной области приложения, он просто в итоге случается время от времени по всем нашим формам.

Наша среда - это HAProxy, обслуживающая mongrel_cluster с 20 mongrels, запускающими наше приложение. Рельсы версии 2.3.8

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

Любая помощь действительно ценится.

+0

Я читал о той же проблеме где-то, может быть, это ошибка – Bohdan

ответ

3

Проблема была действительно проще, чем я ожидал.

Таймер сеанса был установлен в 900 секунд, а иногда писателям потребовалось больше времени, чем редактирование текста на одной странице, без какой-либо другой навигации на веб-сайте.

Это недействило сеанс из-за таймаута, а затем, когда наконец была отправлена ​​форма, часть сеанса токена аутентификации была сброшена, поэтому ошибка InvalidAuthenticityToken поднята.

+0

Я тоже получал это в случайные времена. Как вы обновляете этот таймер сеанса? – johnnymire

+1

Это сделано в файле среды вашей среды, используя config.action_controller.session hash – Draiken

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