Hello,
Wisst Ihr, wie das Problem mit dem Löschen der Session-Dateien gelöst werden kann?
Du hast es schon gesagt, es kann z.B. mit einem Cronjob gelöst werden. PHP auf Debian macht das so. Dort läuft in der mit session.gc_maxlifetime eingestellten Zeit ein Cronjob. Das führt dazu, dass dieser Job regelmäßig läuft.
Du brauchst Dir also nur einen solchen Job zu bauen und die Sessiondateien in einem anderen Verzeichnis abzulegen. Dazu musst Du dann aber auch den session.save_path entweder in der php.ini oder in einer .htaccess (PHP als Apachmodul-Modul) oder einer lokalen php.ini (PHP als CGI) oder eben im Script _bevor_ Du session_start() aufrufst, umstellen.
Dann werden die Sessiondateien in diesem Vereichnis angelegt und auch wieder gesucht.
Für Deinen Cronjob musst Du darauf achten, dass dieser die letzte access-time der Datei abfragt und dass er das Locking beachtet. Es könnte sonst doch gelegentlich zu einem Fehler kommen. Im Prinzip sollte eine Sessiondatei, die sich gerade im Zugriff befindet, allerdings einen Zeitstempel tragen, der den Löschprozess von seiner Arbeit abhält. Es könnte aber eine TOCTOU-Situation erzeugt werden.
Darfst Du bei Funpic eigenen Cronjobs anlegen?
Benutzt Funpic PHP als Modul oser als CGI/Fast-CGI?
Ein harzliches Glückauf
Tom vom Berg