Mailinglisten-Archive |
Hallo, wir haben hier genau die unten beschriebenen Symptome auch festgestellt. Problematisch sind anscheinend Konfigurationen per .htaccess unter Apache/1.3.12 und PHP 3.0.16. In unserem Intranet und anderen Webservern laufen die ganzen Programme mit Apache/1.3.9 und PHP 3.0.12 problemlos. Auch wir arbeiten sehr intensiv mit der .htaccess(mod_rewrite,auto_prepend_file,include_path). Folgendes PHP Programm <?print phpinfo(); ?> erzeugt z.B. diese völlig unsinnige Fehlermeldung: "Fatal error: Failed opening required 'T' in /www/test/de/htdocs/phplib/version.php3 on line 292" Noch eigenartiger als die Fehlermeldung - sie tritt nicht bei jedem Aufruf auf, sondern scheinbar zufällig. Außerdem erscheint auch nicht immer die gleiche Meldung. Im Root Verzeichnis liegt eine .htaccess Datei, in der php3_include_path,php3_track_vars,php3_magic_quotes_gpc verändert werden. Lösche ich diese, so läßt sich der Fehler anscheinend nicht mehr produzieren. Markus Dobel und Andreas Braukmann haben das Problem vor 2 Wochen schon mal diskutiert. Seid ihr denn zu einer Lösung gekommen? Die einzige Möglichkeit, die ich zur Zeit sehe ist ein Downgrade von PHP auf 3.0.12. Michael > Hallo, > > vor einiger Zeit hatte ich in der Newsgroup de.comp.lang.php von einem > Fehlverhalten des PHP-Moduls auf meinem Rechner berichtet. Bis heute > scheint jedoch keiner ausser mir hier diesen Fehler nachvollziehen zu > koennen. Er fiel mir auf, als ich fuer die PHPlib das auto_prepend_file > per .htaccess-Datei konfigurieren wollte. > > Daher dachte ich, es laege vielleicht wirklich an meiner speziellen > Konfiguration bzw. einem Fehler meinerseits und habe mir anstatt der > php3_auto_prepend_file-Geschichte mit einem require der > PHPlib-prepend.php3 beholfen. > Nun hatte ich heute die Gelegenheit, auf einem voellig jungfraeulichen > SuSE 6.3 noch einmal ein wenig damit herumtesten zu koennen, und siehe > da, auch dort hatte ich wieder den gleichen Fehler. > > Daher bitte ich jetzt noch einmal darum, dass (sofern moeglich) sich > jemand die Muehe macht, dies auch bei sich noch einmal so > nachzuvollziehen bzw. mir zu sagen, ob das nun ein Fehler ist, der bei > mir liegt oder doch bei PHP. Bisher scheue ich mich noch, dafuer einen > Bug-Report abzusetzen, da sonst scheinbar keiner diesen Fehler bisher > provozieren konnte. > > Das einzige, was auf diesem Rechner nicht von der Distributions-CD kam, > war PHP. Dies hab ich als Source (3.0.16) gesogen und als DSO > selberkompiliert und dort eingebunden. > > Die Serversoftware dort ist nun: > > Apache/1.3.9 (Unix) (SuSE/Linux) > mod_perl/1.21 > PHP/3.0.16 > mod_ssl/2.4.7 > OpenSSL/0.9.4 > > Der dazugehoerige ./configure-Befehl lautete: > > /configure --with-apxs=/usr/sbin/apxs --with-xml --with-mysql=/usr > --with-dbase=yes --with-ftp --with-pdflib --with-libtiff=/usr > --with-libjpeg=/usr --with-gd=/usr --with-zlib=/usr --with-ttf=/usr > --with-config-file-path=/etc/httpd --enable-debug=no > --enable-safe-mode=no --enable-track-vars=yes --enable-magic-quotes=yes > --enable-bcmath=yes --enable-memory-limit=yes --enable-sysvsem > --enable-sysvshm > > Danach habe ich es noch ges"strip"ped und mit "make install" installiert > sowie das dadurch resultierende doppelte "LoadModule" in der httpd.conf > entfernt. > An den config-files habe ich ansonsten nur ein "AllowOverride all" in > der httpd.conf fuer die folgenden Verzeichnisse eingetragen: > > /usr/local/httpd/htdocs > /home/blafasel/public_html > > in beiden Verzeichnissen habe ich Unterverzeichnisse mit dem Namen > "test" angelegt und folgende Dateien hineingelegt: > > in /usr/local/httpd/htdocs/test/: > htaccess: > php3_magic_quotes_runtime off > order deny,allow > deny from all > allow from 137.226.250. 137.226.251. # bitte durch eigene IP-Bereiche > ersetzen :o) > > index.php3: > <?php phpinfo(); ?> > > Die Dateien gehoeren alle root. > > > in /home/blafasel/public_html/test/: > htaccess: > php3_include_path ".:/home/blafasel/public_html/test" > php3_auto_prepend_file "/home/blafasel/public_html/include.php3" > > index.php3: > <?php phpinfo(); ?> > > include.php3 hat eine groesse von 0 bytes. > > Diese Dateien gehoeren alle dem User blafasel. > > > Als naechstes rufe ich nun ueber den Browser die URL > http://servername/test/index.php3 auf, alles ist in Ordnung. > > Nun gebe ich die URL http://servername/test/~blafasel/test/index.php3 in > den Browser ein und lasse diese einige Male reloaden. > > Danach wieder zurueck zur ersten URL. An dieser Stelle bekomme ich nun > die Fehlermeldung, dass das benoetigte File "<wilder asciisalat>" nicht > gefunden werden konnte. > > Das ganze kann man nun ein wenig entschaerfen, indem man in die Datei > /usr/local/htdocs/test/.htaccess die Zeile > php3_auto_prepend_file none > einfuegt. Somit bekommt man dann wieder die phpinfo() angezeigt, jedoch > ist der include_pfad nicht auf none, sondern irgendwelcher ascii-salat, > oder aber ein Fragment der aktuellen .htaccess-Datei (z.b. das Wort > "order"). > > Koennte das vielleicht jemand auf seinem Rechner nachbauen und mir von > seinen Erfahrungen berichten? Vielleicht hat auch jemand die > Moeglichkeit, das genauer nachzuvollziehen, wo genau der Fehler > auftritt. > > Gruss, Markus > > -- > ** Durchgehend geöffnet: http://www.php-center.de ** > Die PHP-Liste: mailto:php_(at)_infosoc.uni-koeln.de > http://infosoc.uni-koeln.de/mailman/listinfo/php >
php::bar PHP Wiki - Listenarchive