Lokalen Stammordner mit XAMPP verknüpfen

Irgendwelche Probleme mit XAMPP für Mac OS X? Dann ist hier genau der richtige Ort um nachzufragen.

Lokalen Stammordner mit XAMPP verknüpfen

Postby Smartyn » 20. June 2010 19:31

Hallo,

ich bin PHP-Neuling und habe soeben XAMPP erfolgreich installiert. Fürs Webdesign verwende ich den Dreamweaver. Der lokale Stammordner meiner Website befindet sich eigentlich auf einem externen Laufwerk. Um aber XAMPP zum Testen meiner PHP-Dateien verwenden zu können, habe ich nun (nach Anleitung) testweise den Stammordner in das Verzeichnis Macintosh HD:Users:[Username]:Sites: kopiert. So funktioniert es wie gewünscht über die URL http://localhost:80/~ [Username]/Stammordner/ (die ich in den Einstellungen unter -> Test-Server -> URL-Prefix eingegeben habe).

Allerdings würde ich den Stammordner gerne auf dem externen Laufwerk belassen wollen, schaffe es so aber einfach nicht, dann den lokalen Testserver zu nutzen. Ich habe schon versucht, ein Alias des Stammordners im User:Sites-Ordner zu platzieren, aber das hatte auch nicht funktioniert, neben vielen anderen Versuchen. Wenn ich in den Dreamweaver-Einstellungen das Alias als lokalen Stammordner auswähle, registriert er natürlich den tatsächlichen Pfad. Dass es so nicht geht, leuchtet mir ein, aber ich komme hier einfach nicht weiter.

Weiß jemand Rat oder erkennt, was ich hier falsch mache?

Gruß und vielen Dank.
Martin
Smartyn
 
Posts: 6
Joined: 03. November 2007 11:20
Location: München

Re: Lokalen Stammordner mit XAMPP verknüpfen

Postby Nobbie » 20. June 2010 21:42

Smartyn wrote:schaffe es so aber einfach nicht, dann den lokalen Testserver zu nutzen


Smartyn wrote:aber das hatte auch nicht funktioniert, neben vielen anderen Versuchen.


Bist Du ernsthaft der Meinung, ein Dritter könnte mit diesen fabelhaften Fehlerbeschreibungen irgendetwas anfangen?
Nobbie
 
Posts: 13182
Joined: 09. March 2008 13:04

Re: Lokalen Stammordner mit XAMPP verknüpfen

Postby Smartyn » 21. June 2010 12:34

Hallo Nobbie,

oh je, ich dachte eigentlich schon, dass das genügt. Ich hatte mich bewusst kurz gefasst. Aber ich gebe zu, dass ich mit dieser XAMPP-Sache noch ziemliche Verständnis-Schwierigkeiten habe und folglich auch, die Sache korrekt zu benennen. Aber jetzt sehe ich schon auch, dass es ziemlich dürftig war.

Okay, ich versuche nun, noch ein paar Infos zu ergänzen.
Um die Links konkret zu machen, nenne ich meinen Benutzernamen nun "ma" und den lokalen Stammordner "LSTO".

Der XAMPP-Ordner (Testserver) befindet sich im Programme-Verzeichnis, wie im Installationsvorgang empfohlen.
Laut Anleitung soll der Stammordner meiner Website sich entweder in Macintosh HD:Programme:XAMPP:xampfiles:htdocs: befinden oder in Macintosh HD:Benutzer:ma:Websites:, um php-Files lokal über XAMPP testen zu können.

So funktionierte es bereits:
Wenn ich den kompletten Stammordner in _:ma:Websites: kopiere, kann ich ein PHP-File lokal im Browser öffnen und es wird korrekt angezeigt.
Das URL-Präfix hatte ich dann so eingegeben: http://localhost:80/~ma/LSTO/ Und folglich lautete die URL im Browser: http://localhost:80/~ma/LSTO/index.php
Unter dem Eingabefeld für das URL-Präfix steht: Das URL-Präfix ist der Ort des Stammordners der Site auf dem Testserver.

Das möchte ich:
Die Site (der Stammordner LSTO) soll auf einem externen Laufwerk gespeichert sein (wie bisher), das per FireWire mit dem Rechner verbunden ist. Laut Anleitung soll dann per Alias ein "virtuelles Verzeichnis" in einem der genannten Ordner abgelegt werden. Das habe ich gemacht und das gleiche Präfix wie oben eingegeben (http://localhost:80/~ma/LSTO/). Nur dass in diesem Fall LSTO tatsächlich ein Alias ist.

Folgende Fehlermeldungen wurden ausgegeben:
1. In den Site-Einstellungen wurde schon bei Eingabe der URL-Prefix (unter Testserver) folgende Warnung ausgegeben: "Das Site-URL-Präfix /~ma/LSTO für den Testserver stimmt nicht mit dem Site-URL-Präfix überein, das in der HTTP-Adresse für die Site angegeben wurde. Dies kann dazu führen, dass Seiten, die zur Site relative Hyperlinks verwenden, zur Laufzeit nicht Korrekt angezeigt werden. ..."
2. Und prompt wird beim Öffnen des PHP-Files im Browser dann auch folgende Meldung ausgegeben: "Der angeforderte URL konnte auf dem Server nicht gefunden werden. ... Error 404 ..."


Nächster Versuch:
Ich habe als URL-Präfix den tatsächlichen Pfad angegeben: ///Volumes/ExternalDrive/LSTO/. Das File wird bei Testen dann auch gefunden und im Browser geöffnet mit: file:///Volumes/ExternalDrive/LSTO/index.php. Aber es wird nun nicht mehr korrekt ausgegeben, d.h. die PHP-Informationen werden (vom Testserver) nicht verarbeitet.

Meine Frage lautet nun: Gibt es denn eine andere Möglichkeit, als die Alias-Lösung, um einen einen "virtuellen Link" meines Site-Ordners in einem der o.g. Verzeichnisse zu erstellen? Oder mache ich in diesem Zusammenhang einfach nur einen Fehler bei der Angabe des URL-Präfix?


Ich hoffe, dass diese Infos nun mehr Einblick geben. Vielen Dank.
Martin
Smartyn
 
Posts: 6
Joined: 03. November 2007 11:20
Location: München

Re: Lokalen Stammordner mit XAMPP verknüpfen

Postby Nobbie » 21. June 2010 13:58

Smartyn wrote:Die Site (der Stammordner LSTO) soll auf einem externen Laufwerk gespeichert sein (wie bisher), das per FireWire mit dem Rechner verbunden ist. Laut Anleitung soll dann per Alias ein "virtuelles Verzeichnis" in einem der genannten Ordner abgelegt werden.


In welcher Anleitung steht das?

Smartyn wrote:Nur dass in diesem Fall LSTO tatsächlich ein Alias ist.


Ein "Alias" ist an dieser ein sehr unglücklicher Begriff, denn diesen Begriff gibt es auch für Apache und die Konfiguration von Apache. Ich muss jetzt erst einmal herausfinden, was Du mit "Alias" meinst. Was Du mit Worten beschreibst, nennt sich unter Unix (und OSX ist ein Unix-Derivat) eigentlich NICHT Alias, sondern ein "Link" oder genauer "symbolic Link". Gemeint ist damit, dass man eine Datei anlegt, die keine normale Datei ist, sondern die auf eine andere Datei verweist (oder auf einen anderen Ordner). Wenn man in der Konsole so einen "symbolic Link" anlegt, dann wird dazu das Kommando "ln" benötigt.

Wie hast Du diesen "Alias" (wie Du es nennst) angelegt?

Smartyn wrote:Folgende Fehlermeldungen wurden ausgegeben:
1. In den Site-Einstellungen wurde schon bei Eingabe der URL-Prefix (unter Testserver) folgende Warnung ausgegeben: "Das Site-URL-Präfix /~ma/LSTO für den Testserver stimmt nicht mit dem Site-URL-Präfix überein, das in der HTTP-Adresse für die Site angegeben wurde. Dies kann dazu führen, dass Seiten, die zur Site relative Hyperlinks verwenden, zur Laufzeit nicht Korrekt angezeigt werden. ..."


Wer und/oder was gibt diese Fehlermeldung aus? Apache wird dadurch konfiguriert, dass man in der Datei httpd.conf (wo die auf dem Mac liegt, weiß ich nicht, ist aber sicher leicht zu finden) mit einem Editor Einträge vornimmt. So wie es klingt, tust Du das NICHT, sondern benutzt irgendeine Software oder ähnliches, um Apache zu konfigurieren. Wie konfigurierst Du Apache und woher kommen die o.g. Meldungen.


Smartyn wrote:Nächster Versuch:
Ich habe als URL-Präfix den tatsächlichen Pfad angegeben: ///Volumes/ExternalDrive/LSTO/. Das File wird bei Testen dann auch gefunden und im Browser geöffnet mit: file:///Volumes/ExternalDrive/LSTO/index.php. Aber es wird nun nicht mehr korrekt ausgegeben, d.h. die PHP-Informationen werden (vom Testserver) nicht verarbeitet.


Das KANN NICHT gehen, wie Du siehst, steht am Anfang "file://" anstatt "http://". Das ist das sog. "Protokoll", mit der der Browser die Datei anfordert. Und "file://" geht direkt an das Betriebssystem (ein einfacher File Open), was Du nicht gebauchen kannst. Dort MUSS "http://" stehen, dann wird die Anfrage als HTTP Request an einen Webserver (der bei Dir der Rechner selbst ist, nämlich "localhost") gesendet und dann ist Apache involviert und Apache startet PHP.

Meine Frage: was willst Du eigentlich erreichen? Du willst doch (wenn ich es richtig verstehe) nur irgendwie die Möglichkeit haben, direkt auf die PHP Dateien auf dem externen Laufwerk zugreifen zu können (via http://localhost/irgendwie o.ä.) - da ja normalerweise das nicht einfach so geht, weil das nicht unter dem sog. "DocumentRoot" von Apache liegt (der "DocumentRoot" ist der Ordner, wo die HTML und PHP Dateien normalerweise liegen, wenn man nur http://localhost eingibt).

Im Moment versuchst Du, diese externen Dateien so zugänglch zu machen, dass sie zu dem OSX-User "ma" gehören. Ist das aus der Not geboren oder willst Du das unbedingt so haben? Es wäre nämlich möglich, dass man das unabhängig von "ma" so einstellt, dass beispielsweise http://localhost/firewire auf die externe Platte verweist. Oder sogar ohne Ordnername, einen eigenen Domainnamen (statt localhost), man könnte es so einstellen, dass http://firewire oder meinetwegen http://localhost.firewire auf das externe Laufwerk verweisen. Du musst Dich nur entscheiden.

P.S.: Ich glaube, ich verstehe langsam, was Du da versuchst. Du beschreibst die ganze Zeit, wie Du Dreamweaver(!) eingestellt hast (URL-Prefix usw.)? Und die ganzen anderen Dinge. Das solltest Du vielleicht einmal EXPLIZIT dazu schreiben, denn hier ist KEIN Dreamweaver Forum und da geht man von Apache aus und nicht von Dreamweaver.

Und dann verstehe ich auch diese "Anleitung" (das ist natürlich wieder einmal Dreamweaver) und auch die Anweisung mit dem "Alias" - und ich hatte Recht, Du hast das falsch verstanden. Da ist KEIN Datei Alias gemeint, sondern Du musst nun Apache neu einstellen. Dort (in der Datei httpd.conf) mußt Du einen Alias definieren und dann entsprechend in Dreamweaver den URL-Prefix bekannt geben.

Aber das machen wir erst als nächsten Schritt, wenn Du meine Vermutung bestätigt hast.
Nobbie
 
Posts: 13182
Joined: 09. March 2008 13:04

Re: Lokalen Stammordner mit XAMPP verknüpfen

Postby Smartyn » 22. June 2010 14:33

Hallo Nobbie,

zunächst mal vielen Dank für deine Mühe.
Ja, im Wesentlichen hast du meine Situation ziemlich genau beschrieben. Deine Überlegungen haben geholfen, dass es jetzt klappt! Klasse! Insbesondere der Hinweis, in httpd.conf den Eintrag für DocumentRoot zu ändern: /Volumes/ExternalDisk/Websites/ und das URL-Präfix für die Site (in Dreamweaver) lautet dann entsprechend http://localhost:80/LSTO/


Ich sprach ausschließlich von der Anleitung für XAMPP und mit "Alias" meinte ich das, was ich bisher vom Mac-Finder kenne. Dass es da noch etwas anderes gibt, hatte ich geahnt, aber eben nicht umsetzen können. Wie du schon vermutet hast, war meine Strategie mit dem Alias im voreingestellten DocumentRoot eher eine Notlösung. Dass ich den DocumentRoot in der httpd.conf-Datei einfach ändern kann, wusste ich nicht. Das war letztlich der entscheidende Hinweis.

Ich finde schon, dass ich hier im richtigen Forum bin, weil ich ja kein Problem mit Dreamweaver habe. Das ist mein Werkzeug und natürlich muss ich hier ein paar Einstellungen vornehmen, damit die Interaktion mit XAMPP funktioniert. Und diese Einstellungen sind halt abhängig davon, was der Testserver verlangt, bzw. welche Einstellungen ich zunächst dort vornehme. Deine Lösung zeigt, dass ich hier richtig bin.
Ah, und ich habe nicht versucht, den Apache Testserver von Dreamweaver aus zu "konfigurieren". Ich wüsste garnicht, wie das gehen soll.

Ich sag nochmal Danke!
Gruß
Martin
Smartyn
 
Posts: 6
Joined: 03. November 2007 11:20
Location: München


Return to XAMPP für macOS

Who is online

Users browsing this forum: No registered users and 9 guests