JoeWied Posted July 20, 2007 Report Share Posted July 20, 2007 Bitte reiss mich keiner auseinander... Windows 2003, IIS, php 5.2.3, MySQl 5, Smarty_2.6.18 Wenn ich den templates_c ordner mit dem compilaten lösche und meine Seite aufrufe kommen Fehlermeldungen wie folgt: Warning: Smarty::include(templates_c\%%8C^8C3^8C3763E4%%index.html.php) [function.Smarty-include]: failed to open stream: No such file or directory in C:\best-trade.ch\includes\classes\Smarty_2.6.18\Smarty.class.php on line 1265 Das passiert, wenn ich den Server über ISAPI laufen lasse. Wenn ich den Server über CGI laufen lasse, dann kommt dieses Problem nicht und alle Compilate werden sofort erzeugt. Nun zurück über ISAPI. Wenn ich die Seite mehrmals hintereinander refreshe, dann tropfen die Temp_Compilate langsam herein und die Fehler verschinden mit der Zeit. Jetzt war ich so frech, und habe zum Debuggen des Problemes das core_write_file mit einigen Print-Befehlen erweitert. Und zwar wie folgt: print "Fertig1"; if ($params['create_dirs']) { $_params = array('dir' => $_dirname); require_once(SMARTY_CORE_DIR . 'core.create_dir_structure.php'); smarty_core_create_dir_structure($_params, $smarty); } print "Fertig2"; // write to tmp file, then rename it to avoid file locking race condition $_tmp_file = tempnam($_dirname, 'wrt'); if (!($fd = @fopen($_tmp_file, 'wb'))) { $_tmp_file = $_dirname . DIRECTORY_SEPARATOR . uniqid('wrt'); if (!($fd = @fopen($_tmp_file, 'wb'))) { $smarty->trigger_error("problem writing temporary file '$_tmp_file'"); return false; } } print "Fertig3"; // fwrite($fd, $params['contents']); if (!fwrite($fd, $params['contents'])) { print "Kann in die Datei $filename nicht schreiben"; exit; } print "Fertig4"; Das Resulat auf meiner Seite war dann: Fertig1Fertig2Fertig3Fertig4 Warning: Smarty::include(templates_c\%%8C^8C3^8C3763E4%%index.html.php) [function.Smarty-include]: failed to open stream: No such file or directory in C:\best-trade.ch\includes\classes\Smarty_2.6.18\Smarty.class.php on line 1265 Warning: Smarty::include(templates_c\%%8C^8C3^8C3763E4%%index.html.php) [function.Smarty-include]: failed to open stream: No such file or directory in C:\best-trade.ch\includes\classes\Smarty_2.6.18\Smarty.class.php on line 1265 Warning: Smarty::include() [function.include]: Failed opening 'templates_c\%%8C^8C3^8C3763E4%%index.html.php' for inclusion (include_path='.;c:\programm\php\includes;c:\best-trade.ch\inc;C:\best-trade.ch\includes\classes\Smarty_2.6.18') in C:\best-trade.ch\includes\classes\Smarty_2.6.18\Smarty.class.php on line 1265 OBWOHL die Printbefehle ergeben, dass eigentlich fehlerfrei hätte erstellt und geschrieben hätte sollen, taucht im template_c überhaupt nichts auf. Wie gesagt, bei CGI-Ablauf funktionierts Hat jemand eine Ahnung, weshalb sich das so verhält ? Zum testen habe ich ein simples Testprogramm geschrieben, das 1000 Files mit je 100 verschiedenen Records schreibt und das funktioniert sowohl mit CGI und ISAPI. Warum funktioniert das im Shop so unzuverlässig ? Sorry, für den langen Thread, and to bother you with Windox Link to comment Share on other sites More sharing options...
Feofan Posted August 20, 2007 Report Share Posted August 20, 2007 Ich habe absolut das gleiche problematik! Nirgendwo was gefunden... XTC support (vor der Kauf!) hat gesagt, funzt 100% inter IIS! Ich würde gerne die beste konfiguration von XTC-Developers für IIS bekommen. Am besten mit Kommentare! Danke! Link to comment Share on other sites More sharing options...
JoeWied Posted August 21, 2007 Author Report Share Posted August 21, 2007 Ich habe absolut das gleiche problematik! Nirgendwo was gefunden... XTC support (vor der Kauf!) hat gesagt, funzt 100% inter IIS! Ich würde gerne die beste konfiguration von XTC-Developers für IIS bekommen. Am besten mit Kommentare! Danke! Doch ich hab's rausgefunden, hat mich zwar tierisch viel Zeit gekostet, bin halt kein XTC-Developer, aber dafür kriegste eine Antwort :-) Meine Konfig: Windows 2003 Server mit IIS7 und ISAPI, PHP5.2.3 + Smarty ab 2.6.10 Smarty hat einen Fehler und kuckt nicht sauber auf die Tmp-Verzeichnis in PHP.ini. Lösung des Problems: Gib dem Internet-Userkonto VOLLE Zugriffsberechtigung für die OS-Temps (c:\temp c:\windows\temp) und schon schnackelts. Ist etwas unschön einem Internet-User darauf Vollzugriff zu geben (Datenschutz und so), aber so vital dürften diese Temp-Verzeichnisse nicht sein. Viel Glück Link to comment Share on other sites More sharing options...
Feofan Posted August 21, 2007 Report Share Posted August 21, 2007 Ja, das funzt! Thx! Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.