Apache über Windows-internetverbindungsfreigabe
Fireslam
- webserver
Hallo.
Mein Bruder hat DSL und mir Internet per Windows-Internetverbindungsfreigabe (XP) eingerichtet. Auf seinem Rechner läuft ein Apache-Server, auf meinem auch. Wie kann ich es erreichen, dass mein Server über seine IP erreichbar ist.. von mir aus: http://seineip:8080 oder http://seineip/bruder/
Danke für jede Hilfe,
Fireslam
PS:
Bitte keine links zu englischen Dokus oder sonstigem, bitte nur konkrete Beispiele...Ich hab schon mindesten 20 dokus durchgelesen
Hi
Hallo.
Mein Bruder hat DSL und mir Internet per Windows-Internetverbindungsfreigabe (XP) eingerichtet. Auf seinem Rechner läuft ein Apache-Server, auf meinem auch. Wie kann ich es erreichen, dass mein Server über seine IP erreichbar ist.. von mir aus: http://seineip:8080 oder http://seineip/bruder/
Der Apache deines Bruders muss eine Art Proxy-Funktion übernehmen, das heißt deine Seite über seine IP (meinetwegen mit einem Unterverzeichnis) öffnen und dann ausgeben, _direkt_ kann man vom Internet nicht auf deinen PC zugreifen, denn die ICS ist ein IP-Router, der (glücklicherweise) nur in eine Richtung funktioniert, nämlich nach draußen.
Dein Bruder legt sich also beispielsweise ein Script index.php in das Verzeichnis /Bruder, und die Datei muss dann fopen() über Netzwerk auf deinen Server zugreifen, der liefert die Daten an deinen Bruder-Apachen und der schickt sie erst zum Client. Ein gravierender Nachteil ist dabei allerdings, dass du höchstwahrscheinlich absolute URL angeben musst in Links etc., da _immer_ das Script Bruder/index.php (mit einen Get-Parameter, in dem die _tatsächliche_ Seite drinsteht) aufgerufen werden muss, das die Daten von deinem Server holt. Mit Linux ginge das übrigens wesentlich einfacher ;-)
Kleiner Hinweis am Rande: Lies mal bitte die FAQ deines Providers, ob der es zulässt, Webserver mit DSL zu betreiben, das könnte nämlich Ärger geben...
Fabian
Vielen Dank für deine Antwort. Die Idee ist nich schlecht.. aber gibt es nicht auch ein mod_proxy bei apache... bloss wie funktioniert des? naja, ich hoffe, dass noch wer anderes was dazu sagen kann.
Hi
Vielen Dank für deine Antwort. Die Idee ist nich schlecht.. aber gibt es nicht auch ein mod_proxy bei apache... bloss wie funktioniert des? naja, ich hoffe, dass noch wer anderes was dazu sagen kann.
Nein, mod mod_proxy kommst du nicht weiter, da der den Apachen zu einem halb-Proxy macht. Das Problem, das du hast ist, dass der Client nichts von deiner Netzstruktur weiß und mal ehrlich: Ich würde nicht extra in meinem Browser einen Proxy einstellen, um deine Seite zu sehen. Du musst das also machen, _ohne_ das der Bentuzer etwas dazu tun muss. Entweder du routest die HTTP-Requests auf dem Server, das wird jedoch _extrem_ schwierig, oder du machst den Apachen zu einem pseudo-Gateway...
Fabian
Hallo Fabian, Hallo Emmeran,
Vielen Dank für deine Antwort. Die Idee ist nich schlecht.. aber gibt es nicht auch ein mod_proxy bei apache... bloss wie funktioniert des? naja, ich hoffe, dass noch wer anderes was dazu sagen kann.
Nein, mod mod_proxy kommst du nicht weiter, da der den Apachen zu einem halb-Proxy macht.
Fabian, hast Du noch nie etwas von den Direktiven ProxyPass und ProxyPassReverse gehört?
http://httpd.apache.org/docs/mod/mod_proxy.html#proxypass
http://httpd.apache.org/docs/mod/mod_proxy.html#proxypassreverse
In die httpd.conf:
ProxyPass /bruder/ http://ip-des-bruders/
ProxyPassReverse /bruder/ http://ip-des-bruders/
Ach ja, ProxyRequests kannst Du weglassen oder auf 'off' stellen - das 'behindert' ProxyPass nicht.
Das einzige Problem, was es eventuell gibt, ist wenn der Webserver Deines Bruders Absolute HTTP-URIs sendet - das sollte er nicht tun, oder zumindest die URIs fest kodiert haben, damit es klappt.
Grüße,
Christian
Hi Christian
Vielen Dank für deine Antwort. Die Idee ist nich schlecht.. aber gibt es nicht auch ein mod_proxy bei apache... bloss wie funktioniert des? naja, ich hoffe, dass noch wer anderes was dazu sagen kann.
Nein, mod mod_proxy kommst du nicht weiter, da der den Apachen zu einem halb-Proxy macht.Fabian, hast Du noch nie etwas von den Direktiven ProxyPass und ProxyPassReverse gehört?
Nein, habe ich nicht. Dank also für die Korrektur.
Fabian