MacOS Apache (MAMP): Zugriff vom Parallels Desktop
Schuer
- webserver
Hi,
Parallels Desktop ist noch recht neu am Markt, deshalb lassen sich nicht allzu viele Infos zu meiner gewünschten Konfiguration im Netz finden. Es betrifft aber in erster Linie den alten Apachen, deshalb wisst ihr vielleicht Rat:
Auf dem Mac läuft ein MAMP mit diversen Virtual Hosts. Der Apache hört zunächst nur auf 127.0.0.1:80. Unter Parallels Desktop läuft ein Windows XP, das nun möglichst mit den gleichen vhost-Adressen des Macs auf die entsprechenden Projekte zugreifen soll. Wie muss ich vorgehen?
Folgendes schien mir sinnvoll:
1. den Apachen nicht nur auf 127.0.0.1:80 lauschen lassen, sondern die IP des Windows mit hinzunehmen: 192.168.178.24:80. Problem: dann startet er nicht mehr, warum auch immer.
2. in der hosts des Windows die vhosts des Macs mit der entsprechenden IP aufnehmen: 192.168.178.22 projekt.dev projekt2.dev projekt3.dev (..)
Soweit bin ich also, erhalte aber aufgrund des Problems in Punkt 1 kein sinnvolles Ergebnis :)
Dann noch: der Kram soll natürlich nicht von außen zugänglich sein. Ich hüte zwar keine Staatsgeheimnisse, hätte aber kein gutes Gefühl dabei, sämtliche Projekte offenzulegen ;)
Danke und viele Grüße!
_ds
hallo Dirk,
Der Apache hört zunächst nur auf 127.0.0.1:80.
Wie tut er das? Hast du die IP unter "Listen" so angegeben? Wenn ja, dann lösche sie bitte wieder und gib am besten gar keine IP an - für die virtuellen Hasts kannst du sie dann wieder angeben, nur sollte es dort dann keine 127.0.0.1 sein.
Folgendes schien mir sinnvoll:
- den Apachen nicht nur auf 127.0.0.1:80 lauschen lassen, sondern die IP des Windows mit hinzunehmen: 192.168.178.24:80. Problem: dann startet er nicht mehr, warum auch immer.
Wie hast du das gemacht - existieren jetzt unter "Listen" zwei konkurrierende Einträge?
- in der hosts des Windows die vhosts des Macs mit der entsprechenden IP aufnehmen: 192.168.178.22 projekt.dev projekt2.dev projekt3.dev (..)
Das ist eine sehr gute Idee, die eigentlich völlig ausreichen sollte.
Dann noch: der Kram soll natürlich nicht von außen zugänglich sein. Ich hüte zwar keine Staatsgeheimnisse, hätte aber kein gutes Gefühl dabei, sämtliche Projekte offenzulegen ;)
Es wird nicht so schlimm sein. Wer deine aktuelle IP kennt (also nicht die "privaten") bekommt unter Umständen die Startseite zu sehen - falls du bei port 80 bleibst. Das macht eigentlich nicht viel aus. Es sei denn, du hast bereits deine eigene Startseite mit vielen Links zu deinen Projekten. Wenn deine virtuellen Hosts aber IP-Adressen aus dem privaten Bereich haben, sind sie von außen bestimmt nicht erreichbar.
Wenn ich mich richtig erinnere, hattest du kürzlich schon einmal eine Apache-Frage. Da haben wir uns schonmal deine httpd.conf angeschaut, stimmt das? Steht die httpd.conf (wenns geht, ohne Kommentare) noch irgendwo zum Nachsehen zur Verfügung?
Grüße aus Berlin
Christoph S.
hallo,
Wenn ich mich richtig erinnere, hattest du kürzlich schon einmal eine Apache-Frage. Da haben wir uns schonmal deine httpd.conf angeschaut, stimmt das? Steht die httpd.conf (wenns geht, ohne Kommentare) noch irgendwo zum Nachsehen zur Verfügung?
Ich habe deine "alte" httpd.conf wiedergefunden. Dort steht unter "Listen" nur der port, nicht aber eine bestimmte IP, und das solltest du auch so belassen. "Listen" ist bei Apache >2.0.x vorgeschrieben, ganz weglassen darfst du diese Anweisung nicht.
Hast du eventuell den alten Fehler mit diesen komischen Zeichen wiederholt?
Grüße aus Berlin
Christoph S.
Ich habe deine "alte" httpd.conf wiedergefunden. Dort steht unter "Listen" nur der port, nicht aber eine bestimmte IP, und das solltest du auch so belassen.
Das hatte ich in der Zwischenzeit auf besagte IP umgeändert, die alte httpd.conf ist also nicht mehr aktuell.
Aber siehe Lösungs-Posting: inzwischen läuft's, du hast mir sehr geholfen!
Viele Grüße!
_ds
hallo Dirk,
siehe Lösungs-Posting: inzwischen läuft's, du hast mir sehr geholfen!
Na dann: bitte mal "hilfreich" draufkleben, ich sammle grade Pluspunkte ;-)
Grüße aus Berlin
Christoph S.
Na dann: bitte mal "hilfreich" draufkleben, ich sammle grade Pluspunkte ;-)
Gerne ;)
Viele Grüße!
_ds
habe d'ehre Christoph
Na dann: bitte mal "hilfreich" draufkleben, ich sammle grade Pluspunkte ;-)
Letztens sass in der Sendlinger Straße[1] ein Maennlein und positionierte seinen Hut mit entsprechendem Pappkarton auf der Straße. Ich dachte mir, tue was Gutes und kaufte ihm gegenueber in der Metzgerei zwei Semmeln mit Leberkaes und brachte sie ihm. Er darauf entruestet: "Hey, wat soll der Sch...., ick broch Penunze".
Seitdem hat meine Hilfsbereitschaft bei Betteleien einen Knacks erlitten. ;-)
man liest sich
Wilhelm
[1] Einkaufstrasse in Muenchen
hallo Wilhelm,
Letztens sass in der Sendlinger Straße[1] ein Maennlein und positionierte seinen Hut mit entsprechendem Pappkarton auf der Straße. Ich dachte mir, tue was Gutes und kaufte ihm gegenueber in der Metzgerei zwei Semmeln mit Leberkaes und brachte sie ihm. Er darauf entruestet: "Hey, wat soll der Sch...., ick broch Penunze".
Das kann ich verstehen. Leberkaes mag ich auch nicht.
Grüße aus Berlin
Christoph S.
Wie tut er das? Hast du die IP unter "Listen" so angegeben? Wenn ja, dann lösche sie bitte wieder und gib am besten gar keine IP an - für die virtuellen Hasts kannst du sie dann wieder angeben, nur sollte es dort dann keine 127.0.0.1 sein.
Okay, jetzt steht da nur noch Listen 80. Warum darf/soll denn die 127.0.0.1 nicht dort stehen?
Wie hast du das gemacht - existieren jetzt unter "Listen" zwei konkurrierende Einträge?
Ja, ich hatte zwei Einträge untereinander:
Listen 127.0.0.1:80
Listen 192.168.178.24:80
Das ergab wohl einen Konflikt, war mir nicht bewusst.
Das ist eine sehr gute Idee, die eigentlich völlig ausreichen sollte.
Du hast vollkommen recht, das Problem hat sich schnell gelöst. Es funktioniert, vielen Dank!
Fürs Archiv also in drei Schritten:
1. Listen 80
2. die Firewall für Port 80 freigeben, entweder durch die Option "Personal Web Sharing", oder aber separat durch Neu > Tcp 80
3. in der hosts-Datei des Windows die IP des Services auf die projekt-URLs routen, etwa 192.168.178.22 projekt1.dev projekt2.dev projekt3.dev ..
Viele Grüße!
_ds
hallo Dirk,
Okay, jetzt steht da nur noch Listen 80. Warum darf/soll denn die 127.0.0.1 nicht dort stehen?
Das darf schon dort stehen, aber überlege dir genau, was das für eine IP ist. Das ist _immer_ die Loopback-Adresse (na gut, man kann auch das mit der lokalen hosts-Datei etwas beeinflussen, sagen wir also besser, es sei immer die Voreinstellung deines Rechners). Sofern auf dem Rechner, auf dem du deinen Apache installiert hast, also http://127.0.0.1 aufgerufen wird, kommt auch brav die Startseite. Aber auf jedem anderen Rechner, auf dem du das im Browser eingibst, wird ebenfalls dessen _eigene_ Loopback-Adresse gefragt - und da gibts nun einmal bei deinem Windows keinen Apache. Also sagt es dir, daß nichts zu finden ist. IP-Adressen wie 192.168.x.x kannst du nun aber im Netzwerk von allen angeschlossenen Rechnern erreichen - sie dürfen auch bloß ein einzigesmal vergeben werden, sonst gibts einen Netzwerkkonflikt. Aber sie führen immer auf einen ganz bestimmten Netzwerkteilnehmer, und nicht zwangsläufig auf die _eigene_ Loopback-Adresse, wie das eben 127.0.0.1 tut.
Kurz: wenn du nur einen Rechner hast, kann da 127.0.0.1 stehenbleiben, und kann auch für virtuelle Hosts benutzt werden. Sobald aber mehr als ein Rechner darauf zugreifen sollen (wie in deinem Fall), ist die 127.0.0.1 ungeeignet und führt genau zu dem Problem, das du beschrieben hast.
Grüße aus Berlin
Christoph S.