session.save_path = "N;/var/www/data/sessions"
O problema não parece estar causando problemas (já que o PHP obviamente está gerando sessões), mas não está certo.
Os dois formatos para esta opção são:
/path/to/sessions
N;/path/to/sessions
O inteiro N
define quantos subdiretórios serão criados no caminho especificado, útil para distribuir os arquivos da sessão por vários diretórios, se você esperar muitos arquivos de sessão. (Você já descobriu que os sistemas não gostam de muitos arquivos em um diretório ...)
session.gc_probability = 0
Este é provavelmente o principal problema (a menos que o PHP automaticamente manipule alguém configurando isto incorretamente como 0)
A probabilidade de a limpeza acontecer é definida por probability/divisor
. 0/1000
é 0, portanto, provavelmente nunca será executado.
Editar: Em relação à exclusão de arquivos, você pode ter que esperar que ele termine. Se são milhões de arquivos, provavelmente vai parecer que está pendurado.