Fehlermeldung / Smarty error: unable to write to

Begonnen von aexel, 23. September 2009, 15:10:31

Vorheriges Thema - Nächstes Thema

aexel

Hallo Powie,
ohne irgendetwas gemacht zu haben kommt auf einmal diese Fehlermeldung und nichts geht mehr:-(

Fatal error: Smarty error: unable to write to $compile_dir \'/www/htdocs/xyz/cms/cache/smartycompile\'. 
Be sure $compile_dir is writable by the web server user. in /www/htdocs/xyz/cms/lib/smarty/Smarty.class.php on line 1113

 
 
line 1113
 

 trigger_error(\"Smarty error: $error_msg\", $error_type);

 
 
Was kann das sein???
VG Aexel
PS. Beitrag in der falschen Kategorie? dann bitte verschieben

Powie

Das compile Verzeichniss hat keine Schreibrechte -> chmod 777
/www/htdocs/xyz/cms/cache/smartycompile

aexel

nun komme ich aber ins grübbeln, denn ich habe nichts an den Schreibrechten geändert und es lief bis heute (?)
Sehr merkwürdig

Powie


aexel

Nö, da ist Platz ohne Ende noch 8GB
Du bist doch Vollprofi, kann das ftp Tool, bei mir WS_FTP Pro die Schreibrechte durch ein Bug zersägen??
Der Cacheordner hatte nur noch 755 (?)  Auf 777 gesetzt und es funzt wieder /uploads/emoticons/icon_e_surprised.gif.a8707b3f35a569cb4cfe563fc72ef78d.gif\" alt=\":-o\" />

Powie

Auf den wenigsten Webserver funktioniert das mit 755, fast überall wird immer 777 benötigt. Ist schon korrekt so.

raiser

wieso sollte 755 nicht reichen?
Normal sollte 0700 reichen. Das Script sollte als Owner der des WWW-dienstes ausgeführt weden. Also solle er auch schreibrechte haben. Warum muss es auf Gruppe und Other auch noch verteilt sein.
Es MUSS 700 reichen.
Als Bsp.
Apache (debian) wird als www-data:www-data ausgeführt. Der Dienst ist also lesend wie schreibend immer der User: www-data.
Die Gruppe spielt laut User4Group4Other in dem Fall nicht mal annähernd die Geige. Es sei denn da kommt was mit
4xxx als Dateirecht raus GID ist gesetzt.. ..dann ist der Prozess für diese Datei auf die Gruppe gesetzt.
Würde aber jetzt selbst die Auswirkungen auf solchartige Konfiguration erst testen müssen, um da genaueres zu sagen.
UID GID Stiky
Erklärt mich für naiv, aber so muss es funktionieren. 0700 (ähm und das auch wiederrum nur für Ordner. Bei Dateien würde 0500 reichen)
 
Wenn jemand andere Erfahrungen gemacht hat.. ..diese sind sehr interresant. Vielleicht habe ich da auch einen Denkfehler, bei den User-Group-rechten. Ich lasse mich da auch gern belehren.
lG Henrik

Wissen ist das einzige Gut, dass sich vermehrt, wenn man es teilt! (Marie von Ebner-Eschenbach)




Irren ist menschlich!




Wer andern eine Grube gräbt,


sollte darüber nachdenken,


ob sie tief genug ist!!!!




Kameradschaft ist, wenn der


Kamerad schafft !!!!


mahe

Das hängt von der Serverkonfig ab ...
FTP-User ist ja nicht der www-data sondern (zB bei Confixx) webX, bei Confixx ist es dann noch so dass es auch eine Gruppe gibt die so wie der User heißt.
Sprich wenn Du da ein File oder ein Verzeichnis uploadest gehört dieses File webX:webX und da kann www-data:www-data nicht viel mit 0700 oder 0500 anfangen /uploads/emoticons/icon_e_wink.gif.3167d127940f44558fbf1ccd9b6d60a9.gif\" alt=\";-)\" />

http://blog.mahe.at\" rel=\"external nofollow\">http://blog.mahe.at/wp-content/uploads/2007/06/88x31_1.jpg\" alt=\"88x31_1.jpg\">


Ja, diese Signatur dient zur Werbung!


Und dass ich meine Posts wiederfinde ...


Powie

Korrekt, und bei PLESK ist das noch anders, da gibt es auch noch für PSA extra Gruppen etc. Was bisher unter Confixx teilweise noch mit 755 funktionieret hat geht dann da wirklich nur noch mit 777.
Theorie ist das eine, Praxis sieht halt leider oft anders aus.

raiser

Ok, habe ich nicht so gesehen.
Ich bin davon ausgegenagen, das OWNER immer der Dienst vom Webserver ist. Aber sicher : wenn man per FTP hochläd, kann dies anders sein.

Wissen ist das einzige Gut, dass sich vermehrt, wenn man es teilt! (Marie von Ebner-Eschenbach)




Irren ist menschlich!




Wer andern eine Grube gräbt,


sollte darüber nachdenken,


ob sie tief genug ist!!!!




Kameradschaft ist, wenn der


Kamerad schafft !!!!


Powie

Beim normalen Apache Standard wird der Owner der Files, welche von php erzeugt werden der Apache selbst (wwwrun). Nun gibt es hier aber unzählige Möglichkeiten das anders zu machen:
modphp
fastcgi
suphp
php als cgi
usw.
Man kann sich da leider nicht festlegen, de Vielfalt macht das Leben eines Entwicklers teilweise recht spannend  /uploads/emoticons/icon_e_surprised.gif.a8707b3f35a569cb4cfe563fc72ef78d.gif\" alt=\":-o\" />

all your base are belong to us