@Dormarita

Почему может создаваться большое количество файлов сессий на сервере Ubuntu?

Здравствуйте!

Имеется сервер на Ubuntu 18.04 с установленной панелью ISPmanager, версия PHP 7.2, установлен веб-сервер Apache и Nginx.

Создается огромное количество файлов сессий вида "sess_" в папке /tmp/, что забивает inode на 100%.
Производилась очистка файлов сессий, но после ребута сервера inode моментально забиваются снова за считанные минуты.

От чего может быть такое поведение, куда копать?
  • Вопрос задан
  • 133 просмотра
Пригласить эксперта
Ответы на вопрос 1
ipatiev
@ipatiev Куратор тега PHP
Потомок старинного рода Ипатьевых-Колотитьевых
Сессии сами не создаются, их создает РНР при обращении к сайту.
Сколько обращений - столько сессий.

Соответственно, смотреть надо по двум направлениям
1. проверить, не долбит ли кто-то запросами, и заблокировать или ограничить, например использовать Rate Limit у NGINX
2. файловая система - самое убогое хранилище для сессий, и используется по умолчанию только потому, что для всех других нужно указывать параметры подключения. Соответственно, вместо файлов использовать базу данных.

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

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽