Michael Schröpl: Apache updaten /sauber deinstallieren?

Beitrag lesen

Hi,

dann ist z.b. die apachectl nicht direkt
ausführbar... ich muss sie dann voll adressieren
bis zu dem Verzeichniss...

niemand hindert Dich daran, Deine Environment-Variable
PATH um das bin-Verzeichnis der Apache-Installation
zu erweitert, oder auch in irgend einem Verzeichnis,
das schon in PATH liegt, einen symbolic link auf
apachectl zu setzen.

ansonsten liegt die ja bei mir im /usr/sbin
verzeichniss... kann es sein das dieses eine
besondere bewandniss im bezug auf automatisches
ausführen hat (bin noch nicht so lang bei linux..
hab aber sowas ähnliches mal gelesen...).

Nicht für die Automatik (da sind eher Verzeichnisse
wie /etc/* von Interesse), sondern eher für die
Zugriffskontrolle ("sbin" soll wohl "secure binaries"
heißen und erlaubt ggf. nur "root" den Zugriff etc.).

Die rcapache ist dann wohl auch eine Datei die SuSE
anlegt... gut.. und die apache in /etc/init.d/
scheint ja auch so eine zu sein...

Das ist wohl die Einbindung des Apache-Starts in den
Bootvorgang. Alles, was dort in bestimmten Verzeich-
nissen herumliegt und bestimmte Namen hat, wird beim
Booten ausgeführt ... und nein, ich kenne da nicht
die konkreten Namen, die sind ggf. bei jedem UNIX-
Dialekt irgendwie anders.

wenn das so ist, und apache selber keine erzeugt...
wie kann ich dann apache wieder in die rc.3 bekommn?
die ist momentan auf die /etc/init.d gelinkt...

Auch innerhalb von /etc/init.d darfst Du symbolic links
verwenden, würde ich mal vermuten.

ich hab noch die alten DSO module vom apache in
dessen modulverzeichniss (halt von der rpm
install)... wenn ich da nun eines extra einbinden
will, dann gehts nicht weil er probleme mit dem
modul hat... müssen DSOs auch neu kompiliert werden
bevor sie wieder verlinkt werden?

Wie ich schon gesagt hatte: Das kann durchaus der Fall
sein (falls sich am API von mod_so etwas geändert hat).
Je größer Dein Versionssprung, desto wahrscheinlicher
sind m. E. solche Probleme.

ist es besser den alten apache erst zu
deinistallieren (die rpm), oder den neuen gleich
drüber zu installieren.. bzw. kann ich die rpm im
nachhinein noch deinstallieren (dann müsste es ja
eigentlich den neuen apache löschen, aber das wäre
ok wenns auch die module und alles vom alten
mitnimmt)...

Zunächst einmal kannst Du (wenn Du die Zielverzeich-
nisse selbst kontrollierst) beliebig viel Apaches
nebeneinander installieren.

Du kannst sie sogar nebeneinander und simultan be-
treiben - vorausgesetzt, die Apaches lauschen nicht
auf denselben Port derselben TCP/IP-Adresse. Du kannst
also einen neuen Apache irgendwohin installieren,
in dessen "httpd.conf" den Wert der Direktive "Port"
anpassen (z. B. von 80 auf 81) und dann diesen Apache
starten. Der darf auch dieselben Dokumente ausliefern!

Ich selbst besitze üblicherweise eine anwendungs-
spezifisch umgeschriebene httpd.conf, welche ich aber
nicht in dieser Datei selbst speichere, sondern in
einer Datei außerhalb des Apache-Verzeichnisses.
Die httpd.conf des Apache-conf-Verzeichnisses enthält
nur noch zwei Zeilen:
a) eine "Port"-Direktive und
b) eine include-Anweisung auf die eigentliche Apache-
   Konfiguration.
Auf diese Weise kann ich dieselbe Apache-Konfiguration
gleichzeitig in zwei parallel laufenden Apaches ver-
wenden - ich muß bloß im Browser hinter dem DNS-Namen
mit ":81" etc. den Port des neuen Apache angeben.

Auf diese Weise kann ich im laufenden Betrieb einen
neuen Apache in aller Ruhe mit realen Seiten durch-
testen ... und wenn ich zufrieden bin, ändere ich
die Port-Angabe in beiden httpd.conf, stoppe und
starte beide Apaches und habe nun den neuen Apache
auf Port 80 aktiv und den alten auf Port 81 als
"Reserve" (falls doch irgendwas nicht funktioniert).
Und ich kann auch jederzeit in wenigen Sekunden auf
die alte Version zurück ... niemand zwingt mich dazu,
diese überhaupt jemals zu löschen ... und ich muß
auch nicht für mehrere Apaches die Konfiguration mehr-
fach pflegen, weil die eben nicht innerhalb der Apache-
Installation steht.
Mit derselben Methode kann ich auch neue Module fest
einkompilieren, durchtesten und irgendwann den Apache
austauschen ... ich brauche kein mod_so.

Viele Grüße
      Michael