2013-04-15 13 views
8

Ich habe gerade einen vps-Server von einer Hosting-Party bestellt. Es ist ein CentOS mit Plesk 11. Also installierte ich nur meine Zend applicaton auf dem Server aber jetzt die Fehlerprotokoll ZuständeFehler beim Schreiben von Sitzungsdaten (Dateien)

[Mon Apr 15 20:48:28 2013] [warn] [client 94.210.222.87] mod_fcgid: stderr: PHP Fatal error: Uncaught exception 'Zend_Session_Exception' with message 'Zend_Session::start() - /var/www/vhosts/ontwerp.doedels.eu/httpdocs/mvc/libraries/Zend/Session.php(Line:469): Error #2 session_start(): open(/var/www/vhosts/ontwerp.doedels.eu/tmp/sess_t2orkniqjn9rsn9m84d2clsdd1, O_RDWR) failed: Permission denied (13) Array 
[Mon Apr 15 20:48:28 2013] [warn] [client 94.210.222.87] mod_fcgid: stderr: /var/www/vhosts/ontwerp.doedels.eu/httpdocs/mvc/libraries/Zend/Session.php(Line:479): Error #2 session_write_close(): open(/var/www/vhosts/ontwerp.doedels.eu/tmp/sess_t2orkniqjn9rsn9m84d2clsdd1, O_RDWR) failed: Permission denied (13) Array 
[Mon Apr 15 20:48:28 2013] [warn] [client 94.210.222.87] mod_fcgid: stderr: /var/www/vhosts/ontwerp.doedels.eu/httpdocs/mvc/libraries/Zend/Session.php(Line:479): Error #2 session_write_close(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/www/vhosts/ontwerp.doedels.eu/tmp) Array' in /var/www/vhosts/ontwerp.doedels.eu/httpdocs/mvc/libraries/Zend/Session.php:482 

Was ich versuchen, so weit? Ich habe versucht, session.save_path auf {DOCUMENTROOT}/tmp und {WEBSPACEROOT}/tmp einzustellen, das scheint nicht zu funktionieren.

Die phpinfo Funktion sagt, dass session.save_path = /var/www/vhosts/ontwerp.doedels.eu/tmp das ist der gute Ordner. Der Pfad existiert und der Ordner hat 777 CHMOD-Rechte.

Umgehen Es scheint zu funktionieren, wenn ich session.save_path = set {WEBSPACEROOT}/private/sess Das ist ein Ordner i mit 777 chmod Berechtigungen gemacht, aber es scheint doens't eine dauerhafte Lösung zu sein . Da ich diesen Ordner nach jedem Abonnement erstellen muss, mache ich.

Was weiß ich sicher?

  • Der Ordner ist nicht voll
  • Der Ordner tut existiert
  • Die Ordnerberechtigungen hat das Schreiben 777
  • Der Besitzer des Ordners ist 0
  • Ausführen des Server auf fastcgi modus
+0

"jedes Abonnement ich mache" - _subscription_? – MrWhite

Antwort

8

Sie müssen die Berechtigung für Ihr var-Verzeichnis festlegen. Das scheint das Problem zu sein.

+0

Da mein FTP-Benutzer nicht der Besitzer des Ordners ist, kann ich nicht. Soll ich das über ssh tun? –

+0

Ja, verwenden Sie ssh und ich hoffe, Sie haben einen sudo Benutzerzugriff, um die Berechtigung dort zu ändern. –

+0

Nun ja, als ich die Berechtigungen mit SSH bearbeitet habe, hat es funktioniert! Danke vielmals! Aber muss ich dies jedes Mal tun, wenn ich ein Abonnement einrichte? –

2

Die Standardeigentümerschaft ist möglicherweise im Sitzungsordner falsch: Beispiel; php-fpm7.0 auf Amazon Linux ist standardmäßig Apache-Benutzer. Wenn Sie nginx oder andere verwenden, müssen Sie den Ordnerbesitz ändern. Auch als Hinweis müssen Sie die Benutzer-/Gruppeneinstellung in www.conf.com ändern.

chown -R root:nginx /var/lib/php/7.0/ 
sed -i 's/apache/nginx/g' /etc/php-fpm-7.0.d/www.conf 
service php-fpm-7.0 restart 
Verwandte Themen