PHP5 installieren

GalaxyWarrior

Erfahrenes Mitglied
Hi, ich wollte euch mal um Rat bitten.
Ich wollte mal mein PHP 4.3.3 auf PHP5 updaten. Leider habe ich das noch nicht gemacht. Ich habe auch schon bei Google gesucht aber nichts gutes gefunden.Könnt ihr mir helfen, oder kennt ihr Pages wo das beschrieben wird?
Gruß GalaxyWarrior

[EDIT]
System: SuSE Linux 9.0
Webserver: Apache
[/EDIT]
 
Zuletzt bearbeitet:
suche dir ne PHP5-RPM - das dürfte wohl das einfachste sein, damit du die Abhängigkeiten im Paket-Management-System nicht zerschießt.
 
Apache 1 oder 2?
Wenn Du PHP kompilieren willst bietet es sich an, dass alte zu ueberschreiben.
Aus eigener Erfahrung kann ich eigentlich nur sagen, dass das kein Problem ist.

Du pruefst wo Dein PHP aktuell liegt.
which php

In der Regel bekommst Du dort /usr/bin/php genannt.
Diese Info brauchst Du beim kompilieren, fuer das Prefix.
Also:
fuer which php =
/bin/php => Prefix=
/usr/bin/php => Prefix=/usr
/usr/local/bin/php => Prefix=/usr/local

Es koennte theoretisch auch was anderes kommen, aber das Prinzip sollest Du ja jetzt verstanden haben. php ist ja der Name des Programmes, dann noch /bin weg und schon ist das Prefix da.
Da erste Prefix der 3 oben geposteten ist uebrigens wirklich leer.

Dann PHP entpacken in das Verzeichnis mit den Souren wechseln, und jetzt muss Du wissen welche Apache-Version Du hast und wo sie liegt, genauer musst Du wissen wo Du apxs findest.
Auch das sollte mittels which ueberpruefbar sein,es gibt aber auch Ausnahmen.
Also which apxs sollte Dir dann ungefaehr sowas bringen:
/usr/sbin/apxs

Diese Angabe benoetigst Du komplett.

Jetzt kannst Du aus konfigurieren gehen.
Am besten erstmal mit ./configure --help die ganzen Optionen ansehen.
Anhand dessen kannst Du entscheiden was so Unterstuetzt werden soll, z.B. MySQL, FTP, GetText und vieles mehr.
Und dann: (ich geh jetzt einfach mal von /usr als Prefix /usr/sbin/apxs als Location von apxs aus)
./configure --prefix=/usr --with-apxs=/usr/sbin/apxs (fuer Apache 1)
./configure --prefix=/usr --with-apxs2=/usr/sbin/apxs (fuer Apache 2)
Dahinter kannst Du natuerlich noch die von Dir ausgesuchten Optionen zur Unterstuetzung verschiedenster Dinge setzen.
Und das solltest Du auch, ansonsten ist PHP naemlich ziemlich nackt.

Wenn das configure-Skript erfolgreich durchgelaufen ist kannst Du mit make kompilieren.
Und wenn das dann erfolgreich abschliesst kannst Du mit make install Dein frish gebackenes PHP installieren.


Die Anleitung ist ohne Gewaehr, aber mit Blaubeersirup.
 
Hi, also, which php geht, das is in usr/bin/php, nur which apxs bring garkeine ausgabe :confused:

Habe Apache1, hab die Zahl vergessen dazuzuschreiben :D

Hab auch mal nach net RPM gesucht, aber keine gefunden, allerdings ist mir da eine sehr interessante Frage aufgefallen, und zwar ob es sinnvoll ist PHP4 und 5 paralel laufen zu lassen. Und vorallem wieviel mehr aufwand es geben wird.

Gruß GalaxyWarrior
 
Die im System installierte Version von PHP ist dafuer nicht wichtig.
Einzig und allein das Modul ist fuer den Apache wichtig.
So hab ich z.B. hier auf der Arbeit zwar PHP5 installiert, kann aber im Apache (beiden, hab 1 und 2 parallel laufen) einfach in der Config das Modul wechseln und hab dann PHP4.
Das nutze ich manchmal zum testen meiner Scripts mit PHP4, in der Regel nutze ich aber PHP5.

Wie hast Du Apache installiert? Mit der Distribution oder von Hand?
Wo liegt Dein Apache?
Wo liegt apachectl?
 
Dann sollte apxs eigentlich auch in /usr/sbin liegen.
Hast Du da mal geschaut?
Wenn Du es nicht hast wirst Du wohl PHP nicht davon ueberzeugen koennen mit dem Apache zusammenzuarbeiten.

Es gibt 2 Wege PHP fuer Apache 1 zu kompilieren:
Entweder man kompiliert es fest in den Apache ein, dafuer muss aber auch Apache kompiliert werden, oder man macht es als SharedObject ueber apxs.
 
reptiler hat gesagt.:
Wenn Du es nicht hast wirst Du wohl PHP nicht davon ueberzeugen koennen mit dem Apache zusammenzuarbeiten.

Vieleicht ist Apache ja bestechlich :D

Naja, das heißt dann wohl, dass ich mal die apxs suchen muss -.-
Wieso kann die überhaupt nicht vorhanden sein.

Gruß GalaxyWarrior
 
Ich weiss nicht ob es moeglicherweise nicht installiert wird wenn man Apache ohne DSO-Support kompiliert. (DSO = dynamic shared objects)
 
Ich bin mir nicht sicher, aber hat LoadModule foo_module libexec/mod_foo.so was mit DSO zu tun? Also die Module die da eingeladen werden meine ich.Weil darüber steht in der httpd.conf etwas über DSO, und ich weiß nun nicht ob die Module dazugehören, wenn ja, dann fände ich das auf den ersten Blick sehr merkwürdig

Gruß GalaxyWarrior
 

Neue Beiträge

Zurück