Спрете бота да използва сесии

Разработвам сайт и използвам Heroku за моя хостинг. Аз съм на техния план за разработка, който ми позволява да използвам безплатната им база данни, но само до 10 000 реда. След като не докоснах сайта в продължение на два дни, бях шокиран да видя имейл предупреждение от Heroku, че съм достигнал 7400 реда в моята база данни. След известно проучване разбрах, че ботовете за търсене създават сесии. Има ли начин това да се спре? Опитах решението в тази публикация, но изглежда не работи:

Как да деактивирате Rails сесии за уеб роботи?

Използвам rails 3.2.2.


person hugo    schedule 17.08.2012    source източник


Отговори (2)


Както се вижда в този въпрос ( Задаване на време за изчакване на сесия в Rails 3), можете внедрите автоматично изтичане на вашата сесия и изтрийте редовете на базата данни, когато сесията изтече. Ако поддържате времето за изтичане на сесията ниско и продължавате да изпускате редове в базата данни, предполагам, че няма да достигнете лимита си за Heroku.

person Kulbir Saini    schedule 17.08.2012
comment
Трябва да има по-добър отговор от този, някакви идеи? - person Micah; 11.06.2014

Защо съхранявате сесии във вашата база данни? Предлагам ви да потърсите настройките на сървъра/сайта, които го правят, и да го деактивирате. В повечето случаи няма смисъл да се съхраняват сесии в DB и определено не и на сайта за разработка.

person Germann Arlington    schedule 17.08.2012
comment
Благодаря за съвета, но имаше причини да избера db session store. Можете ли все пак да ми дадете отговор на въпроса ми? - person hugo; 17.08.2012
comment
Ако решението, което споменахте в публикацията си (връзка към по-ранна публикация), не работи, тогава трябва да проверите низовете на потребителския агент, предадени от ботовете във вашия случай, и да коригирате съответно регулярния израз. И вижте и опцията Kulbir Saini. - person Germann Arlington; 17.08.2012
comment
Гласувам против, защото сесиите в DB са по-безопасният начин за управление на сигурността. Вижте ръководствата на Rails относно съхранението на сесии: guides.rubyonrails.org/security.html#session-storage - person Amin Ariana; 18.03.2013
comment
@AminAriana Мисля, че НЕ си чел guides.rubyonrails.org/security.html# насоки за сесии напълно. НЕ предлага съхраняване на сесии в DB, ​​а съхраняване на чувствителна информация в DB вместо сесия. - person Germann Arlington; 01.08.2013