Net-Housting.de: Adressierungsfehler nach Änderung der P
Net-Housting.de: Adressierungsfehler nach Änderung der P
am 13.05.2006 08:06:37 von j.kanuft
Hallo Leute,
mein Provider, die Firma Net-Housting, hat offenbar irgendetwas bzw. mehrere
Einstellungen an ihrer PHP-Installation meiner Internetdomain jksoft.de geändert,
sodass plötzlich einige meiner seit Jahren unveränderten PHP-Seiten plötzlich
Fehlermeldungen bringen.
Nachdem ich das reklamiert habe wurden offenbar einige Einstellungen wieder
zurückgenommen, denn einige Fehlermeldungen sind jetzt weg, aber nicht alle.
Die Firma Net-Housting ist aber weder gewillt und Fähig die den verbleibenden
Fehlermeldungen zugrundeligenden Einstellung zu suchen und zu beseitigen, ausserdem
antwortet sie mir nicht mehr auf meine diesbezüglichen Emails, sondern sie behauptet,
die den restlichen Fehlermeldungen zugrunde liegenden Fehler seien in meinem Programm zu suchen, das aber bisher fehlerfrei
funktioniert hat.
Da ich keine fundierten Kenntnisse in PHP habe kann ich selbst die Ursache der
Fehlermeldungen nicht finden:
die Befehlszeile:
include($DOCUMENT_ROOT."/phpinc/jklib.jkphp");
verursacht folgende Fehlermeldung:
Warning: main(/phpinc/jklib.jkphp): failed to open stream: No such file or directory in
/srv/www/htdocs/web209/html/interfaces/index.php on line 12
Die Datei jklib.jkphp befindet sich aber nach wie vor im Verzeichnis /phpinc/.
Worauf ist diese Fehlermeldung dann zurück zu führen?
Gruss an alle die dies lesen
Dank an alle die mir antworten
Jürgen
Re: Net-Housting.de: Adressierungsfehler nach Änderung der PHP-Installation?
am 13.05.2006 09:40:34 von Martin Lemke
Am Sat, 13 May 2006 08:06:37 +0200 schrieb Jürgen Kanuft:
> Warning: main(/phpinc/jklib.jkphp): failed to open stream: No such file or directory in
> /srv/www/htdocs/web209/html/interfaces/index.php on line 12
>
> Die Datei jklib.jkphp befindet sich aber nach wie vor im Verzeichnis /phpinc/.
>
> Worauf ist diese Fehlermeldung dann zurück zu führen?
Dass die Datei nicht geöffnet werden konnte, muss ja nicht heißen, dass sie
nicht vorhanden ist. Vielleicht sind zu Zugriffsrechte falsch gesetzt?
Martin
Re: Net-Housting.de: Adressierungsfehler nach Änderung der PHP-Installation?
am 13.05.2006 09:40:54 von Joerg Behrens
Jürgen Kanuft schrieb:
>
> Hallo Leute,
>
> mein Provider, die Firma Net-Housting, hat offenbar irgendetwas bzw.
> mehrere
> Einstellungen an ihrer PHP-Installation meiner Internetdomain jksoft.de
> geändert,
> sodass plötzlich einige meiner seit Jahren unveränderten PHP-Seiten
> plötzlich
> Fehlermeldungen bringen.
>
> Nachdem ich das reklamiert habe wurden offenbar einige Einstellungen wieder
> zurückgenommen, denn einige Fehlermeldungen sind jetzt weg, aber nicht
> alle.
>
> Die Firma Net-Housting ist aber weder gewillt und Fähig die den
> verbleibenden
> Fehlermeldungen zugrundeligenden Einstellung zu suchen und zu
> beseitigen, ausserdem
> antwortet sie mir nicht mehr auf meine diesbezüglichen Emails, sondern
> sie behauptet,
> die den restlichen Fehlermeldungen zugrunde liegenden Fehler seien in
> meinem Programm zu suchen, das aber bisher fehlerfrei funktioniert hat.
>
> Da ich keine fundierten Kenntnisse in PHP habe kann ich selbst die
> Ursache der
> Fehlermeldungen nicht finden:
>
> die Befehlszeile:
>
> include($DOCUMENT_ROOT."/phpinc/jklib.jkphp");
$DOCUMENT_ROOT existiert nur wenn PHP mit Register_Globals=on laeuft.
Diese Einstellung ist aber seit mehr als 3 Jahren auf OFF. Es haette
schon immmer auf $HTTP_ENV_VARS['DOKUMENT_ROOT'] zugegriffen bzw. seit
php4.1.1 auf $_SERVER[...].
11.20. Warum funktionieren meine Formulare nicht?
http://faq-php.de/q/q-formular-register-globals.html
Mache dich mal schnell schlau was die superglobalen Arrays sind und was
es ausser $_SERVER, $_GET, $_POST sonst noch so gibt.
> verursacht folgende Fehlermeldung:
>
> Warning: main(/phpinc/jklib.jkphp): failed to open stream: No such file
> or directory in /srv/www/htdocs/web209/html/interfaces/index.php on line 12
>
> Die Datei jklib.jkphp befindet sich aber nach wie vor im Verzeichnis
> /phpinc/.
Er sucht in der Wurzel des Dateisystems nach einem Verzeichnis /phpinc
was da garantiert nicht existiert. Wenn du am Scriptanfang eine
error_reporting(E_ALL) setzt wirst du sehen wie PHP dir sagt das die
Variable nicht existiert (siehe oben) und somit ein falscher Pfad
definiert und benutzt wird.
>
> Worauf ist diese Fehlermeldung dann zurück zu führen?
Auf eine schlampige Programmierung.
Setze zum entwickeln error_reporting(E_ALL) und verwende die $_* Arrays.
Dann wird deine Seite wieder funkt. und keine Fehler/Warnungen mehr
anzeigen.
Gruss
Joerg
Re: Net-Housting.de: Adressierungsfehler nach Änderung d
am 13.05.2006 12:59:39 von j.kanuft
Hallo Joerg
>>
>> mein Provider, die Firma Net-Housting, hat offenbar irgendetwas bzw.
>> mehrere
>> Einstellungen an ihrer PHP-Installation meiner Internetdomain
>> jksoft.de geändert,
>> sodass plötzlich einige meiner seit Jahren unveränderten PHP-Seiten
>> plötzlich
>> Fehlermeldungen bringen.
>>
>> Nachdem ich das reklamiert habe wurden offenbar einige Einstellungen
>> wieder zurückgenommen, denn einige Fehlermeldungen sind jetzt weg,
>> aber nicht alle.
>>
>> Die Firma Net-Housting ist aber weder gewillt und Fähig die den
>> verbleibenden
>> Fehlermeldungen zugrundeligenden Einstellung zu suchen und zu
>> beseitigen, ausserdem
>> antwortet sie mir nicht mehr auf meine diesbezüglichen Emails,
>> sondern sie behauptet,
>> die den restlichen Fehlermeldungen zugrunde liegenden Fehler seien in
>> meinem Programm zu suchen, das aber bisher fehlerfrei funktioniert
>> hat. Da ich keine fundierten Kenntnisse in PHP habe kann ich selbst die
>> Ursache der Fehlermeldungen nicht finden:
>>
>> die Befehlszeile:
>>
>> include($DOCUMENT_ROOT."/phpinc/jklib.jkphp");
>
> $DOCUMENT_ROOT existiert nur wenn PHP mit Register_Globals=on laeuft.
> Diese Einstellung ist aber seit mehr als 3 Jahren auf OFF. Es haette
> schon immmer auf $HTTP_ENV_VARS['DOKUMENT_ROOT'] zugegriffen bzw. seit
> php4.1.1 auf $_SERVER[...].
>
> 11.20. Warum funktionieren meine Formulare nicht?
> http://faq-php.de/q/q-formular-register-globals.html
>
> Mache dich mal schnell schlau was die superglobalen Arrays sind und
> was es ausser $_SERVER, $_GET, $_POST sonst noch so gibt.
>
>> verursacht folgende Fehlermeldung:
>>
>> Warning: main(/phpinc/jklib.jkphp): failed to open stream: No such
>> file or directory in /srv/www/htdocs/web209/html/interfaces/index.php on
>> line 12 Die Datei jklib.jkphp befindet sich aber nach wie vor im Verzeichnis
>> /phpinc/.
>
> Er sucht in der Wurzel des Dateisystems nach einem Verzeichnis /phpinc
> was da garantiert nicht existiert. Wenn du am Scriptanfang eine
> error_reporting(E_ALL) setzt wirst du sehen wie PHP dir sagt das die
> Variable nicht existiert (siehe oben) und somit ein falscher Pfad
> definiert und benutzt wird.
>
>> Worauf ist diese Fehlermeldung dann zurück zu führen?
>
> Auf eine schlampige Programmierung.
na-na-na ...
meine Seiten können durchaus vor mehreren Jahren programmiert worden sein.
ich habe diese Befehle auf den Servern verschiedener Provider gehabt,
aber noch Fehlermeldungen dazu bekommen.
als Gelegenheitsprogrammierer fehlt mir halt der Durchblick.
ich habe derzeit keine Zeit mich wieder in PHP einzuarbeiten.
wenn mein Provider seine Installation nicht wieder auf den alten Stand bringt
muss ich mir der Einfachheit halber einen anderen Provider suchen
>
> Setze zum entwickeln error_reporting(E_ALL) und verwende die $_*
> Arrays. Dann wird deine Seite wieder funkt. und keine
> Fehler/Warnungen mehr anzeigen.
Gruss
Jürgen
Re: Net-Housting.de: Adressierungsfehler nach Änderung der PHP-Installation?
am 13.05.2006 13:09:26 von Martin Lemke
Am Sat, 13 May 2006 12:59:39 +0200 schrieb Jürgen Kanuft:
> wenn mein Provider seine Installation nicht wieder auf den alten Stand bringt
> muss ich mir der Einfachheit halber einen anderen Provider suchen
Ich bin mit Domainfactory zufrieden. Aber dass dort kaputte Skipte
reibungslos laufen, können die sicher auch nicht garantieren. Aber immerhin
gibt es php5 und ein ansprechbares Support-Team zum akzeptablen Preis. Mit
Änderungen am System sind die dort sehr zurückhaltend.
Martin
Re: Net-Housting.de: Adressierungsfehler nach Änderung d
am 13.05.2006 18:42:46 von j.kanuft
Hallo Joerg
>>
>> include($DOCUMENT_ROOT."/phpinc/jklib.jkphp");
>
> $DOCUMENT_ROOT existiert nur wenn PHP mit Register_Globals=on laeuft.
> Diese Einstellung ist aber seit mehr als 3 Jahren auf OFF. Es haette
> schon immmer auf $HTTP_ENV_VARS['DOKUMENT_ROOT'] zugegriffen bzw. seit
> php4.1.1 auf $_SERVER[...].
Danke für den Tipp.
Mein Provider hat Register_Globals=on gesetzt, jetzt geht es wieder.
Gibt es eigentlich ein Tool das eine Domain nach PHP-Fehlermeldungen
durchsucht und diese auflistet?
Gruss
Jürgen
Re: Net-Housting.de: Adressierungsfehler nach Änderung der PHP-Installation?
am 13.05.2006 22:39:49 von Joerg Behrens
Jürgen Kanuft schrieb:
> Hallo Joerg
>
>>>
>>> include($DOCUMENT_ROOT."/phpinc/jklib.jkphp");
>>
>> $DOCUMENT_ROOT existiert nur wenn PHP mit Register_Globals=on laeuft.
>> Diese Einstellung ist aber seit mehr als 3 Jahren auf OFF. Es haette
>> schon immmer auf $HTTP_ENV_VARS['DOKUMENT_ROOT'] zugegriffen bzw. seit
>> php4.1.1 auf $_SERVER[...].
>
> Danke für den Tipp.
>
> Mein Provider hat Register_Globals=on gesetzt, jetzt geht es wieder.
Tja... vom Regen in die Taufe. Nunja... manche werden erst aus Schaden klug.
> Gibt es eigentlich ein Tool das eine Domain nach PHP-Fehlermeldungen
> durchsucht und diese auflistet?
Ist bei PHP doch alles dabei. Error_reporting hoch setzen,
Display_errors entsprechend auf OFF so das der User im Browser nix sieht
und nun error_log setzten. Alle Meldungen laufen nun in das Log.
Die richtige vorgehensweise waere allerdings PHP lokal zu installieren
und Moeglichst in einer aehnlichen Konstellation wie dein Provider sie
bietet. Mir ist klar das man da als Gelegenheits PHP User ueberfordert
ist bzw. diesen Aufwand nicht treiben mag.
Gruss
Joerg
Re: Net-Housting.de: Adressierungsfehler nach Änderung d
am 14.05.2006 08:14:09 von j.kanuft
Hallo Joerg Behrens wrote:
> Jürgen Kanuft schrieb:
>> Hallo Joerg
>>
>>>>
>>>> include($DOCUMENT_ROOT."/phpinc/jklib.jkphp");
>>>
>>> $DOCUMENT_ROOT existiert nur wenn PHP mit Register_Globals=on
>>> laeuft. Diese Einstellung ist aber seit mehr als 3 Jahren auf OFF. Es haette schon immmer auf $HTTP_ENV_VARS['DOKUMENT_ROOT']
>>> zugegriffen bzw. seit php4.1.1 auf $_SERVER[...].
>>
>> Danke für den Tipp.
>>
>> Mein Provider hat Register_Globals=on gesetzt, jetzt geht es wieder.
>
> Tja... vom Regen in die Taufe. Nunja... manche werden erst aus
> Schaden klug.
>> Gibt es eigentlich ein Tool das eine Domain nach PHP-Fehlermeldungen
>> durchsucht und diese auflistet?
>
> Ist bei PHP doch alles dabei. Error_reporting hoch setzen,
> Display_errors entsprechend auf OFF so das der User im Browser nix
> sieht und nun error_log setzten. Alle Meldungen laufen nun in das Log.
>
>
> Die richtige vorgehensweise waere allerdings PHP lokal zu
> installieren und Moeglichst in einer aehnlichen Konstellation wie dein Provider sie
> bietet. Mir ist klar das man da als Gelegenheits PHP User ueberfordert
> ist bzw. diesen Aufwand nicht treiben mag.
>
>
> Gruss
> Joerg
Re: Net-Housting.de: Adressierungsfehler nach Änderung d
am 14.05.2006 08:19:29 von j.kanuft
Hallo Joerg Behrens wrote:
> Jürgen Kanuft schrieb:
>> Hallo Joerg
>>
>>>>
>>>> include($DOCUMENT_ROOT."/phpinc/jklib.jkphp");
>>>
>>> $DOCUMENT_ROOT existiert nur wenn PHP mit Register_Globals=on
>>> laeuft. Diese Einstellung ist aber seit mehr als 3 Jahren auf OFF. Es haette schon immmer auf $HTTP_ENV_VARS['DOKUMENT_ROOT']
>>> zugegriffen bzw. seit php4.1.1 auf $_SERVER[...].
>>
>> Danke für den Tipp.
>>
>> Mein Provider hat Register_Globals=on gesetzt, jetzt geht es wieder.
>
> Tja... vom Regen in die Taufe. Nunja... manche werden erst aus
> Schaden klug.
ich habe versucht $DOCUMENT_ROOT durch $HTTP_ENV_VARS['DOCUMENT_ROOT']
(mit "C") zu ersetzen; hat aber an den Fehlermeldungen nichts geändert!
>
>> Gibt es eigentlich ein Tool das eine Domain nach PHP-Fehlermeldungen
>> durchsucht und diese auflistet?
>
> Ist bei PHP doch alles dabei. Error_reporting hoch setzen,
> Display_errors entsprechend auf OFF so das der User im Browser nix
> sieht und nun error_log setzten. Alle Meldungen laufen nun in das Log.
kannst du mir eine Webseite nennen wo ich näheres leicht verständlich nachlesen kann?
>
> Die richtige vorgehensweise waere allerdings PHP lokal zu
> installieren und Moeglichst in einer aehnlichen Konstellation wie dein Provider sie
> bietet. Mir ist klar das man da als Gelegenheits PHP User ueberfordert
> ist bzw. diesen Aufwand nicht treiben mag.
richtig erkannt;
hätte aber für meinen derzeitigen Fehler keinen Nutzen gehabt!
gibt es nicht doch ein eigenständiges externes Programm?
Gruss
Jürgen
Re: Net-Housting.de: Adressierungsfehler nach Änderung der PHP-Installation?
am 14.05.2006 10:22:34 von Joerg Behrens
Jürgen Kanuft schrieb:
> Hallo Joerg Behrens wrote:
>> Jürgen Kanuft schrieb:
>>> Hallo Joerg
>>>
>>>>>
>>>>> include($DOCUMENT_ROOT."/phpinc/jklib.jkphp");
>>>>
>>>> $DOCUMENT_ROOT existiert nur wenn PHP mit Register_Globals=on
>>>> laeuft. Diese Einstellung ist aber seit mehr als 3 Jahren auf OFF.
>>>> Es haette schon immmer auf $HTTP_ENV_VARS['DOKUMENT_ROOT']
>>>> zugegriffen bzw. seit php4.1.1 auf $_SERVER[...].
>>>
>>> Danke für den Tipp.
>>>
>>> Mein Provider hat Register_Globals=on gesetzt, jetzt geht es wieder.
>>
>> Tja... vom Regen in die Taufe. Nunja... manche werden erst aus
>> Schaden klug.
>
> ich habe versucht $DOCUMENT_ROOT durch $HTTP_ENV_VARS['DOCUMENT_ROOT']
> (mit "C") zu ersetzen; hat aber an den Fehlermeldungen nichts geändert!
Ich sagte doch schon das es heute $_SERVER['DOCUMENT_ROOT'] heissen soll
(und je nach Einstellung auch MUSS). Die alten $HTTP_* Arrays gibt seit
PHP3 und es war der eigentlich richtige Weg.
Wenn du noch Fehler enthaelts musst du sie auch mal angeben hier. Aber
du sagtest das dein Provider Register_globals=ON fuer dich gesetzt hat.
Somit steht auch $DOCUMENT_ROOT wieder zur verfuegung. Wie kann den da
dann noch wieder ein Error kommen?
>>
>>> Gibt es eigentlich ein Tool das eine Domain nach PHP-Fehlermeldungen
>>> durchsucht und diese auflistet?
>>
>> Ist bei PHP doch alles dabei. Error_reporting hoch setzen,
>> Display_errors entsprechend auf OFF so das der User im Browser nix
>> sieht und nun error_log setzten. Alle Meldungen laufen nun in das Log.
>
>
> kannst du mir eine Webseite nennen wo ich näheres leicht verständlich
> nachlesen kann?
http://de3.php.net/manual/de/language.variables.predefined.p hp
Wie es der Zufall will haben sie sogar DOCUMENT_ROOT als Beispiel genommen.
Dummerweise finde ich die URL nicht wo alle INI settings gelistet werden
und wo man diese verwenden kannt. Setzen tust du sie mit ini_set und die
Schreibweise kann man in einem phpinfo() sehen. Dort kann man dann auch
sehen ob das setzen erfolgreich war.
>>
>> Die richtige vorgehensweise waere allerdings PHP lokal zu
>> installieren und Moeglichst in einer aehnlichen Konstellation wie dein
>> Provider sie
>> bietet. Mir ist klar das man da als Gelegenheits PHP User ueberfordert
>> ist bzw. diesen Aufwand nicht treiben mag
>
> richtig erkannt;
>
> hätte aber für meinen derzeitigen Fehler keinen Nutzen gehabt!
>
> gibt es nicht doch ein eigenständiges externes Programm?
K.a. Es sind doch nur 3 Zeilen welche an einer zentralen Stellen
gemacht werden muessen (innerhalb einer include/require Datei) .
Gruss
Joerg
Re: Net-Housting.de: Adressierungsfehler nach Änderung der PHP-Installation?
am 14.05.2006 12:34:14 von Matthias Esken
On Sun, 14 May 2006 08:19:29 +0200, Jürgen Kanuft wrote:
> ich habe versucht $DOCUMENT_ROOT durch $HTTP_ENV_VARS['DOCUMENT_ROOT']
> (mit "C") zu ersetzen; hat aber an den Fehlermeldungen nichts geändert!
Na Klasse. Wir ersetzen ein Wrack durch ein Auslaufmodell.
Sowohl register_globals (deine erste Variante) wie auch
register_long_arrays (deine zweite Variante) werden in PHP6 wohl direkt zu
einem E_CORE_ERROR führen.
Es wäre übrigens $_SERVER['DOCUMENT_ROOT'] gewesen.
>>> Gibt es eigentlich ein Tool das eine Domain nach PHP-Fehlermeldungen
>>> durchsucht und diese auflistet?
>> [...]
> gibt es nicht doch ein eigenständiges externes Programm?
"ein Tool das eine Domain nach PHP-Fehlermeldungen durchsucht und diese
auflistet"? Nicht dass ich wüsste. Der von Joerg beschriebene Weg ist schon
recht gut. Das Zend-Studio hat ein wenig Unterstützung für
Source-Überprüfung und ansonsten kann ich nur empfehlen auf der
Entwicklermaschine grundsätzlich das error_reporting in der php.ini so hoch
wie möglich zu drehen.
Gruß,
Matthias
Re: Net-Housting.de: Adressierungsfehler nach Änderung der PHP-Installation?
am 18.05.2006 09:42:11 von Tobias Kutzler
Jürgen Kanuft schrieb:
> wenn mein Provider seine Installation nicht wieder auf den alten Stand
> bringt
> muss ich mir der Einfachheit halber einen anderen Provider suchen
.... und mit den Sicherheitslöchern leben, die diese Einstellungen
aufreissen. Jeder so, wie er will! SCNR...
BTW: Es gibt eigentlich kaum noch einen Hoster, der Hosting-Pakete mit
alten Versionen geschweige denn alten Konfigurationen - eben wegen der
Sicherheitsrisiken - anbietet. Da Du ja eh nicht weisst, welche
Konfigurationseinstellung welchen Fehler verursacht, kannst Du auch bei
keinem Provider nach einer bestimmten Konfiguration fragen. Sieh lieber
zu, dass Du Deine Skripte aktualisierst.
Ciao,
Tobias