Warning: touch(): Utime failed: Permission denied
Schreibe ich die Sitzung in einer temporären Datei wie folgt:
if ($_SESSION['user_login_status'] == 1)
{
touch("tmp/access-" . session_id());
}
Habe ich die folgenden Berechtigungen auf den tmp, nur um zu testen, es funktioniert (ich werde ändern Sie die Berechtigungen restriktiver sein als ich-test):
drwxrwxrwx+
Erhalte ich die folgende Fehlermeldung:
Warning: touch(): Utime failed: Permission denied
Irgendwelche Gedanken? Alles, was ich habe gegoogelt bisher, sagt überprüfen Sie die Berechtigungen ("fertig") oder in Bezug auf ein wordpress-Fehler, die ich bin, nicht ausgeführt werden. Danke!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich hatte die gleiche Fehlermeldung angezeigt (aber einen anderen code-snippet). Was löste es für mich war die änderung der Besitzer der Datei, d.h.
chown uname:uname filename
.root
und ich habe ihn an meinem eigenen Konto (mein system war Ubuntu 16.04)Scheint es, dass die Berechtigungen auf das Verzeichnis sind nicht das problem, sondern der "Zugriff" . session_id() scheint bereits vorhanden und die Berechtigungen so, dass der PHP-Prozess nicht ändern können, es ist Utime. Überprüfen, ob die Datei "Zugriff" . session_id() gibt, wenn so entfernen Sie es und führen Sie das Skript. Wenn Sie nicht erhalten eine Fehlermeldung, überprüfen Sie, ob die Datei "Zugriff" . session_id() erstellt wurde und was es-Berechtigungen sind. Wenn Sie nicht korrekt sind, versuchen Sie, den Befehl chmod die Datei direkt nach dem anlegen mit touch.
Lief ich in die Fehler und nur entfernt die zugrunde liegenden Dateien und die Fehlermeldung ging Weg...