AlexBausW: patch 4.2.1 -> 4.2.2

Hallo Alle

Ich habe eben den php-4.2.1-to-4.2.2.patch eingespielt (mit backups), und anschließend mit './config.nice' 'make' und 'make install' versucht, mod_php für meinen Apache1.3.26 zu erneuern.
Leider meldet sich der Server aber mit:

Server: Apache/1.3.26 (Unix) mod_ssl/2.8.9 OpenSSL/0.9.6e PHP/4.2.1
X-Powered-By: PHP/4.2.1

statt wie erwartet PHP/4.2.2 (php_version.h wurde korrekt gepatched).

Ist das so richtig bzw. muss/kann das so sein? Kann ich irgendwie sonst erkennen, ob der Patch erfolgreich einkompiliert wurde?

Schon mal Vielen Dank für die Antworten im Vorraus.

Gruß Alex
--
http://www.google.de/search?hl=de&safe=off&q=Rechtschreibung+Standart

  1. Aloha!

    Ist das so richtig bzw. muss/kann das so sein? Kann ich irgendwie sonst erkennen, ob der Patch erfolgreich einkompiliert wurde?

    Potentiell würde ich erwarten, dass mindestens Apache neu gestartet werden sollte, vielleicht auch neu kompiliert (sofern du kein DSO einsetzt).

    Ansonsten hab' ich aber eher keine Ahnung vom PHP-in-Apache-einbauen, das hab' ich zu selten selbst gemacht.

    - Sven Rautenberg

    1. Hallo

      [PHP meldet sich nach Patch als 4.2.1 statt 4.2.2]

      Potentiell würde ich erwarten, dass mindestens Apache neu gestartet werden sollte, vielleicht auch neu kompiliert (sofern du kein DSO einsetzt).

      Der Apache ist mit DSO-Support kompiliert und wurde neu gestartet. libphp4.so in /www/libexec ist so wie es aussieht (Dateigröße und Erstellungsdatum) die neu kompilierte Datei (Die Installatioin hat also imho geklappt, was auch die Ausgbe von 'make install' nahe legt :).

      Interressant ist, daß auch phpinfo() PHP als Version 4.2.1 ausweist (allerdings auch den Apachen als 1.3.22, unter der die vorherige "Version" von PHP/4.2.1 kompiliert wurde). Zudem gibt phpinfo() als 'Build Date' 'Jun 20 2002 12:22:08' an (genau da habe ich PHP/4.2.1 komplett neu gebaut). Scheinbar hat mein Apache noch nicht mitbekommen, daß eine neu Version von des PHP-Modules existiert.
      Kann das vielleicht etwas mit dem Raid aus 2 Festplatten zu tun haben? Imho sollte das doch aber transparent sein (zumal ja alle Vorgänge auf Kommandozeile problemlos ablaufen).

      Gruß Alex
      --
      http://www.google.de/search?hl=de&safe=off&q=Rechtschreibung+Standart

      1. Moin,

        Der Apache ist mit DSO-Support kompiliert und wurde neu gestartet. libphp4.so in /www/libexec ist so wie es aussieht (Dateigröße und Erstellungsdatum) die neu kompilierte Datei (Die Installatioin hat also imho geklappt, was auch die Ausgbe von 'make install' nahe legt :).

        Schau mal nach ob der Apache die Datei auch geöffnet hat, zum Beispiel mit so etwas wie
        lsof -p PIDEINESAPACHEPROZESSES | grep libphp4.so

        Btw, bei mir sind die Apache-Module alle in /usr/lib/apache.

        --
        Henryk Plötz
        Grüße aus Berlin

        * Help Microsoft combat software piracy: Give Linux to a friend today! *

        1. Hallo Henryk,

          Der Apache ist mit DSO-Support kompiliert und wurde neu gestartet. libphp4.so in /www/libexec ist so wie es aussieht (Dateigröße und Erstellungsdatum) die neu kompilierte Datei (Die Installatioin hat also imho geklappt, was auch die Ausgbe von 'make install' nahe legt :).

          Schau mal nach ob der Apache die Datei auch geöffnet hat, zum Beispiel mit so etwas wie
          lsof -p PIDEINESAPACHEPROZESSES | grep libphp4.so

          Die "richtige"(?) libphp4.so ist so wie es aussieht geladen:

          alexb@genius:/usr/local/apache_1.3.26/libexec> lsof -p 24879 | grep libphp4.so
          httpd   24879 root mem    REG    9,1 3251513  622844 /usr/local/apache_1.3.26/libexec/libphp4.so

          Vielleicht muss ich doch einfach die kompletten Sourcen ziehen, und mod_php von Grund auf neu bauen. :))

          Btw, bei mir sind die Apache-Module alle in /usr/lib/apache.

          Bei mir sind liegen die Module unter /usr/local/apache_${APACHE_VERSION}/libexec. /usr/local/apache zeigt auf das benachbarte Verzeichnis mit der aktuellen Apacheversion und /www ist ein Link auf /usr/local/apache. So kann ich während die alte Version noch läuft, bereits die neue Version kompilieren (mit --prefix=/usr/local/apache) und muss anschließende nur noch den Link "umschalten".

          Gruß Alex
          --
          http://www.google.de/search?hl=de&safe=off&q=Rechtschreibung+Standart