CodeIgniter: index () начинают вызываться 3 раза? - PullRequest
1 голос
/ 12 февраля 2011

Я столкнулся со странной проблемой.Кажется, что некоторые из методов index () моих контроллеров выполняются 3 раза, тогда как он должен делать это только один раз.Причина, по которой я это выяснил, заключается в том, что я регистрирую количество раз выполнения метода index () - и заметил, что записи вставляются за 3 секунды.

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

ОБНОВЛЕНИЕ: Кажется, что проблема существует только тогда, когда у меня включен JavaScript.Когда я перешел на JavaScript, я больше не получаю несколько записей.У проблемных контроллеров есть JavaScript.JS - это просто плагин для FB и Google AdSense.

1 Ответ

0 голосов
/ 12 февраля 2011

У меня когда-то была такая проблема, задержка между запросами составляла около 2-5 секунд.Причиной был Google AdSense.Он почему-то делает другой запрос со своего собственного сервера без причины на ту же страницу.Чтобы проверить это, просто сохраните IP-адрес каждого запроса и пользовательский агент, если IP-адреса (также и пользовательские агенты) отличаются, то вы знаете причину.

Решение?Дайте пользователю какой-нибудь токен перед посещением следующей страницы - если токен не соответствует следующему запросу - это не тот же пользователь.Что-то вроде защиты XSRF:)

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