Beiträge von Synonym

    So, noch weiter hoch gearbeitet, aber das überhaupt was bringt weiß ich nicht - ich verstehe es nämlich nicht. Das Script lief nun 4 Jahre Fehlerfrei. Weiter oben habe ich die sftp Funktionen um die Verzeichnisse anzulegen bzw. zu prüfen, ob die schon da sind. Da müssen 5 angelegt / geprüft werden. Hier kommt schon der Segfault, wenn ich alle 5 bearbeiten lasse.

    Code
    if(!$sftp->sftp_mkdir($pfad_img_original, 0755, true))


    Gebe ich da nur ein Verzeichnis an, dann kommt kein Fehler. Bei zwei mkdir ist er wieder da. Aber das alles funktioniert ja eigentlich. Verzeichnisse werden angelegt und Bilder übertragen.

    So und der Test mit einem einzigen mkdir und der aktivierten Funktion von weiter unten.
    -> kein Fehler.

    Also
    1 mkdir und aktive Funktion geht.
    2 oder mehr mkdir und inaktive Funktion auch.

    Header dürfen aber bei beiden Versionen nicht gesendet werden.

    Das ergibt doch alles keinen Sinn....

    Hab das Ding schon 20x neu gestartet ;)
    Nun habe ich mich etwas nach oben gearbeitet. Also oberhalb vom exit und header...

    Und auch da bekomme ich einen Segfault... Und als Code habe ich da nur:

    Code
    function punktefunktion ($value)
    {
    	return 0;
    }
    
    
    $rangpunkte = punktefunktion($_SESSION['uk_id']);


    Ich rufe also nur eine Funktion auf, die 0 zurück gibt -> Segfault.
    Rufe ich die Funktion nicht auf, dann gibt es keinen. (Header darf ich aber dennoch nicht senden)

    Benenne ich die um, nutze ich Referenzen oder übergebe ich direkt feste Werte an die Funktion, returne ich andere Werte etc. ändert sich nichts. Der Fehler besteht, sobald ich die aufrufe.

    Aber... Gliedere ich die aus in ein anderes Script und rufe das dann auf, dann kommt wieder kein Fehler.

    PHP
    <?php
    function punktefunktion ($value)
    {
    	return 0;
    }
    $uk_id = 486;
    $rangpunkte = punktefunktion($uk_id);
    ?>


    Also an der Funktion selbst liegt es auch nicht. Passiert halt nur in dem Bilderscript.

    Also ich glaub der will mich verarschen. So, ein ganz anderes Script, sehr einfach:

    So, was passiert, wenn man test-1.php aufruft? Richtig, er sollte an test-1.php?loc=1 weiterleiten. Doch das macht er auch nicht. Keine Weiterleitung.

    So, etwas genauer:

    Ruft man das auf, dann erhält man als Ausgabe:
    - 1 - - 2 -

    Verfluchter Mist. Nach - 1 - kommt die Weiterleitung. - 2 - darf der doch gar nicht anzeigen. Aber ein Segfault kommt nun zumindest nicht...

    Mist, bin echt schon kirre. Kann ja gar nicht gehen. Ist ja ein Echo vor dem Header...

    Ja, das geht es Dir wie mir, ich weiß auch nicht mehr weiter. Ja, die haben alle das gleiche Arbeitsverzeichnis.

    Hab mit nun auch eben 4 Core-Dumps erstellen lassen. Jetzt muss das doofe gdb installiert werden, das mach ich jetzt aber nicht mehr. Ist halt ein Produktiv-Server und da kann ich nicht so wie ich will :(

    Und ich liebe Google hier auch wieder mal. Such mal nach Segfault header oder exit... Da kommt jeder Mist, aber nichts was man sucht.

    Hm, also jetzt hab ich noch was versucht.... Hab die Weiterleitung wieder drinnen und es geht. Danach steht noch was, aber das habe ich weg gelassen, weil das ja noch unwahrscheinlicher ist...

    Genau hört das Script so auf:

    Code
    _log_debug('Galerie UK '.$_SESSION['uk_id'].': debug_msg: '.$debug_msg);
    
    
    // Weiterleitung um F5 zu verhindern
    header ('HTTP/1.1 301 Moved Permanently');
    header ('Location: /index.php?mod=bildergalerie');
    exit;
    ?>

    Mit Weiterleitung und ohne "exit" kommt der Fehler nicht! Aber wie gesagt, in dem anderen Script ist das Exit auch und es war auch schon immer da drinnen ...

    Zitat

    Kannst du mal ein 302 machen ( Moved temporaly)


    Hab ich schon. Auch schon HTTP 1.0 und 1.1. Auch schon nur "Location" und nur "302" bzw. "301". Ist das gleiche. Sobald ein Header kommt ist es vorbei.

    Zitat

    Sind die beiden Scripts auf dem gleichen Server? Gleiche Domain?


    Ja, alles identisch. Gleicher Server, gleiche Domain, gleicher vHost, gleiches Verzeichnis (Kundenbereich).

    Zitat

    Das teste mal indem du einen andern Pfad nimmst zum testen, aber genau das PHP schnipsel benutzt

    Wenns geht muss es daran liegen, also irgendwelchen rechten.
    copiere den pfad aber nicht stur, lad das am besten per ftp hoch, also keine fehler übernehmen

    du hast doch shell zugriff oder?


    Wie meinste das? Welchen Pfad wechseln? Den Zielpfad auf dem File-Server kann ich nicht ändern, das wäre fatal. Das Script kann ich wo anders hin kopieren, muss aber im Kundenbereich bleiben.
    SSH hab ich :)

    Nee, das ist nichts. Gut, inkludiert schon, aber das ist nichts, was es nur da gibt.

    Inkludiert wird eine ini.php, die halt Config, MySQLi-Class (eigene), DB-Connect und eine Userprüfung (für den Login) lädt. Alles gibt es auf jeder Seite bei mir.
    Inkludiert wird auch eine eigene SSH2-Class, aber die wird auch an ca. 8 Stellen verwendet (auch im zweiten identischen Script).

    So, mehr Includes gibt es da eigentlich nicht. Dann eben noch die Image-Funktionen zur Bilderstellung / Bearbeitung. Normalen PHP-Code zur Formulardatenprüfung und eben Code zur Übertragung auf den File-Server.

    Das alles läuft ja auch korrekt durch. Die Bilder werden bearbeitet, neu erstellt und übertragen. Keine Abbrüche, Scriptfehler oder andere Ungereimtheiten. Danach kommt dann als letztes der HEADER 301 um zurück zur Übersicht zu kommen und das tut er nicht mehr. Ohne Header kommt halt nix, da das Script selbst gar keine Ausgabe hat und auch nicht haben soll.

    Mein eigenes Debug-Log:

    So, [60] müsste nun der 301 sein.... Aber dahin kommt er nicht mehr.

    Ja, gleiche Script, gleicher Server, gleicher Host. Ist bei mir im Kundenbereich. Die beiden Scripte laden Bilder hoch und unterscheiden sich nur im Zielpfad. Der Zielserver ist auch identisch.

    Speicherverbrauch vom Script.
    0,48 MB am Ende
    0,56 MB Peak

    Server:
    Aktuelle Nutzung: 422.620k
    Total: 4.194.304k

    So, debug war aktiviert und mehr sehe ich dennoch nicht, extra zwei mal versucht.

    Code
    [Tue Jun 26 14:28:23 2012] [notice] Graceful restart requested, doing restart
    [Tue Jun 26 14:28:23 2012] [notice] Apache/2.2.16 (Debian) configured -- resuming normal operations
    [Tue Jun 26 14:28:23 2012] [info] Server built: Apr  1 2012 06:40:08
    [Tue Jun 26 14:28:23 2012] [debug] prefork.c(1013): AcceptMutex: sysvsem (default: sysvsem)
    [Tue Jun 26 14:28:34 2012] [notice] child pid 13723 exit signal Segmentation fault (11)
    [Tue Jun 26 14:28:44 2012] [notice] child pid 13734 exit signal Segmentation fault (11)
    Zitat

    guck mal in die logs
    watt steht denne da?


    Witzbold ;)

    Was da steht?
    das da:

    Und zwar im allgemeinen Apache error.log. In den anderen Logs, auch denen für den speziellen Host steht dazu gar nichts drinnen.

    Ich möchte auch noch anmerken. Das Script erfüllt seinen Zweck. Die Bilder werden hochgeladen, bearbeitet, verkleinert und umbenannt. Die SSH2-Verbindung zum externen Server wird aufgebaut, die Bilder werden übertragen. Die Verbindung wird normal geschlossen. Daten werden in die Datenbank eingetragen. Alles funktioniert. Nur dann kommt der Fehler und der Browser meldet auch, dass der Server die Verbindung zurückgesetzt hat. Gleichzeitig dann der Segfault im Log.

    Sagt mal, hat einer eine Ahnung woher oder wie so ein Segfault (Segmentation Fault) entsteht?

    Aktuell habe ich gerade das Problem, dass ich seit 12:36 Uhr bei einem Script immer einen Segfault bekommt. Das seltsame ist daran, dass das Script bisher immer funktioniert hat und das wird minütlich genutzt.

    Geändert wurde an dem Script rein gar nichts - null, nichts. Ich bin nun nur schon so weit, dass ich einen möglichen Fehler gefunden habe, aber das kann ja eigentlich nicht sein...

    Am Ende des Scriptes habe ich das hier stehen:

    Code
    header ('HTTP/1.1 301 Moved Permanently');
    header ('Location: /index.php?mod=bildergalerie');


    Entferne ich das, dann ist der Segfault auch weg. Nehme ich es wieder rein, ist der Fehler sofort wieder da.

    Seltsam auch, das Script habe ich nochmals. Identisch. Es schreibt die Bilder nur auf einen anderen Serverpfad. Das zweite Script funktioniert aber sowohl mit als auch ohne Weiterleitung.

    Die üblichen Kandidaten wie Eaccelerator, APC, GC habe ich schon ausgeschlossen. Egal ob an oder aus, der Fehler bleibt bestehen.

    Hat einer eine Idee was das sein kann?

    Hier jedenfalls mal ne Liste mit Themen aus den News. Grob geht es um Google, Webmaster und SEO.

    So gesehen haben die Edel-Host-Meldungen da ja auch nichts zu suchen, oder? Wer sucht denn schon aktuelle Meldungen des Hosters da drinnen?

    Zitat

    Ich persönlich würd im OT wohl als letztes nach Infos über Google suchen.


    Ich auch ;)
    Meine bescheidene Meinung. Das hier ist ein SEO-Forum, also sollte es primär auch um SEO gehen. Demzufolge auch die NEWS beim SEO. Allerdings hatte ich auch immer gedacht es wäre für "News" zum Thema SEO. Dass die für OT gedacht sind war mir gar nicht klar. "Talk about" ist also eigentlich alles OT? Wenn das primär für OT gedacht war, warum braucht man das denn dann überhaupt? OT gibt es ja schon.

    Margin
    Frage, keine Ahnung ob das geht. Aber man kann ja anscheinend automatisiert nach Anzahl der Posts einen User von einer Gruppe in eine andere verschieben. Kann man dann nicht auch einer Gruppe das Recht der BB entziehen und dann eben bei x Post automatisch in eine andere Gruppe mit BB kommen? Bei den PMs scheint das so zu gehen.

    2. Post: *** Link veraltet ***