2 Apache Instanzen gleichzeitig

I

IDss

Mitglied
Thread Starter
Dabei seit
14.09.2005
Beiträge
89
Reaktionspunkte
0
Ich habe kürzlich das Typo3-Quickstart-Paket installiert und damit den Apache 2, MySQL, PHP etc. (xampp).

Der Safari kommt gut mit den 2 laufenden Apache-Installationen zurecht. Über die IP-Adresse des Rechners oder 127.0.0.1 greift er auf den standardmäßigen Apache 1.3 zu, über localhost auf den Apache 2 aus dem Typo3-Paket. Dabei habe ich Websharing aktiviert, weil ich dann auch von einem externen Rechner auf die unter dem Apache 1.3 laufenden Webseiten zugreifen kann (alles zu Entwicklungs- und Testzwecken).

Der Firefox kommt mit den 2 Apaches nicht zurecht (ich muss ihn aber benutzen, da nur der Firefox mit dem htmlarea-Richtext-Editor für Typo3 zurecht kommt). Firefox interpretiert "localhost" als den Standard-Apache 1.3.

Erst wenn ich das Sharing abschalte, kann ich auf die Typo3-Seiten unter Apache 2 zugreifen. Aber natürlich nicht mehr auf diejenigen auf dem Apache 1.3.

Mein Versuch, den Namen des Apache 2 zu ändern, führte leider dazu, dass ich die Typo3-Installation nicht mehr aufrufen konnte (trotz Anpassung in der localconf.php).

Wie kann ich den Firefox dazu bringen, sich wie Safari zu verhalten? Ich habe keine Einstellmöglichkeiten gefunden. Er scheint auf die Netzwerkkonfiguration zurückzugreifen und diese anders zu interpretieren als Safari.

Gruß

IDss
 
Zuletzt bearbeitet:
Ich kann nicht so recht glauben, was Du da berichtest.

Zwei Apaches auf dem selben Port laufen zu lassen kann nicht funktionieren.
Falls Du nicht einen auf einem anderen Port laufen lässt (z.B. 8080 oder 81 oder so) wirst Du grundsätzlich immer Probleme haben beide gleichzeitig laufen zu lassen.

Das hat nichts mit dem Apachen und schon gar nicht mit den verwendeten Browsern zu tun, sondern mit der systeminternen Socket-Verwaltung.

[Edit:]Ich hab dich mal ins passende Unterforum verschoben und versucht einen aussagekräftiger Threadtitel zu erstellen.
 
Und wie weise ich dem Apache einen anderen Port zu? Genügt es, die Anpassung in der httpd.conf zu machen?
Ich fürchte, dananch klappen diverse Dinge nicht mehr. Immerhin hat bisher nur der Firefox Probleme.
Im Grunde hätte ich nichts dagegen, nur den Apache 2 laufen zu lassen. Aber, wie gesagt, ich weiß nicht, wo OS X überall den Apache benutzt.

Gruß

IDss
 
Zuletzt bearbeitet:
IDss schrieb:
Und wie weise ich dem Apache einen anderen Port zu? Genügt es, die Anpassung in der httpd.conf zu machen?
...
ja, das genügt (Server neu starten nicht vergessen)
IDss schrieb:
...
Immerhin hat bisher nur der Firefox Probleme.
...
Möglicherweise greift Safari noch auf Dateien im Cache zu.
Dass zwei Server auf dem selben Port lauschen, das geht einfach nicht.

Deine Befürchtungen sind mE unbegründet; Mac OS X braucht den Apache nicht.
 
maceis schrieb:
..
Möglicherweise greift Safari noch auf Dateien im Cache zu.
...
Also Webseiten lädt er nicht aus dem Cache, da achte ich drauf, denn ich teste ja dauernd Webseiten. Kann er andere Informationen im Cache halten?

Gruß

IDss
 
Zuletzt bearbeitet:
Apache unterstützt durchaus "virtuelle Server" dabei ist auch eine Unterstützung via Namensauflösung möglich. Wenn in der /etc/hosts unterschiedliche Namen für eine IP eingetragen sind kann EIN Apache diese unterschiedlichen virtuellen Servern zuordnen ( sehr praktisch für Testwecke!). Wie sich 2 Apache-Dämonen auf einem Port verhalten ist mit Sicherheit nicht vorhersagbar und somit nicht stabil. Entweder einen Server mit virtuellen Domains oder eben zwei Server mit unterschiedlichen Ports! Alles Andere muß zu Inkonsistenzen führen!
 
Lösung: Portänderung

Habe nun für den Apache 2 den Port 81 vergeben, während der Apache 1.3. auf 80 läuft. Nun hat auch der Firefox keine Probleme mehr.
In der etc/hosts war nur der localhost mit 127.0.0.1 eingetragen.

Gruß

IDss
 
Zuletzt bearbeitet:
wegus schrieb:
...
Wie sich 2 Apache-Dämonen auf einem Port verhalten ist mit Sicherheit nicht vorhersagbar und somit nicht stabil.
...
Ich hab's noch nie ausprobiert, aber ich würde mal vermuten, wenn der erste sich an den Port 80 gebunden hat, dürfte das Betriebssystem das Binden des zweiten nicht mehr zulassen (zumindest nicht solange der erste das Socket besetzt hält).
 
Und nun: Zugriff vom Windows-Rechner auf den Port-80-Apache

Wie kann ich nun vom Windows-Rechner auf die Seiten, welche an den Port 81 gebunden sind, zugreifen? http://192.168.0.1:81 funktioniert nicht! (lokal auf dem Powerbook aber schon!)

Gruß

IDss
 
hast du die Firewall aktiviert? -> Port 81 freigeben.
 
Firewall: wie zusätzlichen Port freigeben

Mit deaktivierter Firewall klappt der Zugriff. Danke für den Tipp!
Aber:
Wo kann ich den Port freigeben? In der Systemsteuerung unter "Sharing" finde ich keine Hinweise.

Gruß

IDss
 
Im Terminal (auf die Schnelle und nicht getstet - müsste aber genügen):
Code:
sudo ipfw add 02000 allow tcp from any to me dst-port 81 in
 
oder über die GUI:

Systemeinstellungen -> Sharing -> Firewall -> Neu

Dort kannst du die TCP-Portnummer eingeben und dem Dienst unter "Beschreibung" einen Namen verpassen.
 
Danke, hat geklappt!
(Lag wohl an der Uhrzeit, dass mir die Schaltfläche "Neu" entgangen war).
 
Zurück
Oben Unten