Ok, ich wollt so ne Art Home Server Einrichten und hab mir Apache runtergeladen und fachgemäß installiert. Aber was muss ich noch tun?
Ich hab Windows XP auf dem Rechner und seit der Installation unten neben der Uhr Apache-Monitoring. Da steht der Server ist online. Aber ich kapier nicht wie man
a) Was hochläd
b) Erweiterungen like PHP installiert
c) hochgeladene Sachen anzeigt...
Original geschrieben von Crash-Override Ok, ich wollt so ne Art Home Server Einrichten und hab mir Apache runtergeladen und fachgemäß installiert. Aber was muss ich noch tun?
Ich hab Windows XP auf dem Rechner und seit der Installation unten neben der Uhr Apache-Monitoring. Da steht der Server ist online. Aber ich kapier nicht wie man
a) Was hochläd
b) Erweiterungen like PHP installiert
c) hochgeladene Sachen anzeigt...
Bitte helft mir. Hab so was noch nie gemacht.
...
Hochgeladene Sachen anzeigen? O_o
Was hochladen? °_O
Warum hab ich bloß das Gefühl das du absolut keine Ahnung hast, was du dir da installiert hast?
Nuja, jeder fängt mal klein an.
zu a) Du brauchst nichts hochladen. Du brauchst nur Dateien die über deinen Apacheserver erreichbar sein sollen, in den DocumentRoot werfen. Wo sich dein DocumentRoot befindet, musst du in der entspr. Direktive aus der Apachekonfigurationsdatei (httpd.conf) entnehmen.
Hey, das klappt Prima!
Mit hochladen meint ich Datein, Webseiten etc. Hab's aber schon geschaft...
Aber jetzt hab ich eine neue Frage.
Wie sehen andere Leute dann die "hochgeladenen" Dateien?
Ich dachte erst http://MEINE_IP, aber dann komm ich (nach Passworteingabe) zu den Konfigurations eintellungen meines Routers....
edit:
PHP-Installation
If you would like to use PHP as a module in Apache 2.0, be sure to move php4ts.dll for PHP 4, or php5ts.dll for PHP 5, to winnt/system32 (for Windows NT/2000) or windows/system32 (for Windows XP), overwriting any older file. You need to insert these two lines to your Apache httpd.conf configuration file to set up the PHP-Module for Apache 2.0:
Wo finde ich die httpd.conf Datei? Ich find sie net und die Windoof Suche auch net.... mist
edit2:
Schon gefunden die Datei aber wenn ich in sie
schreib will Apache net mehr starten...
Also guck ich ins PHP Verzeichniss und da gibt es nur die
php4ts.dll
Datei im Hauptverzeichniss (CPHP)...
und keinen sapi - Ordner....
Wenn ich aber:
Such in der httpd.conf die LoadModule Liste und füge die erste Zeile darunter ein.
Dann suchst du nach Zeilen mit >AddType<, darunter fügst du die zweite Zeile ein.
Zitat
und keinen sapi - Ordner....
...
Bei PHP4? Entweder hast du den Installer (pöse) verwendet oder ein kaputtes ZIP Archiv.
PHP5, von dem ich momentan noch abrate, hat die php5apache2.dll allerdings tatsächlich im PHP Hauptverzeichnis (5.0.0).
Original geschrieben von Crash-Override Hey, das klappt Prima!
Mit hochladen meint ich Datein, Webseiten etc. Hab's aber schon geschaft...
Aber jetzt hab ich eine neue Frage.
Wie sehen andere Leute dann die "hochgeladenen" Dateien?
Ich dachte erst http://MEINE_IP, aber dann komm ich (nach Passworteingabe) zu den Konfigurations eintellungen meines Routers....
...
Du musst den Port 80 auf die LAN-IP deines Rechners forwarden.
Das geht bei meinem SMC-Router z.B. über:
"NAT"->"Virtual Server"-> Private IP: IP deines Rechners im lokalen Netzwerk | Service Port: 80 | Type: TCP | Enabled: [X]
Ahja, schalt die Remoteadministration deines Routers am besten ab, wo du schon dabei bist.
Es sei denn du denkst dir was dabei sie aktiviert zu lassen, aber aus welchem Grund sollte man diese Sicherheitslücke, dass irgendjemand aus dem Internet sich per Bruteforce an der Routeradministration zu schaffen macht, offen lassen wo das doch so leicht zu fixen ist.
_____________________________________
Ok, das mit dem Router hab ich noch net hinbekommen, aber notfalls benutz ich's halt als Testumgebung für meien PHP-Dateien...
Bei mir gibt es da auch NAT aber dann kommt ne Auswahl...
Network Addrsss Translation
O Ohne
O Nur SUA //Markiert [Details Bearbeiten]
O Vollständig [Details Bearbeiten]
Wenn ich auf Nur SUA [Details bearbeiten klicke]
kommt:
Bitte sagt mir was ich tun soll kenn mich mit dem Router net aus...
(ist übrigens dieser Zyxel Router von AOL...)
Trag unter Nummer 5 ein:
Erste Port Nr.: 80
Letzte Port Nr.: 80
IP Adresse: 192.168.1.33
Ich geh dabei davon aus das dein Rechner die Netzwerk-IP 192.168.1.33 hat.
Grundsätzlich wäre es von der Sicherheit her am besten wenn dein Router keine unangeforderten Daten an deinen Rechner weitergibt, allerdings funktionieren so nun mal keine Server hinter einem Router, denn wenn jemand deinen Server besuchen will, muss er natürlich eine von dir nicht angeforderte Anfrage an deinen Rechner richten können. Wenn dein Router allerdings nicht weiß an welchen angeschlossenen Rechner er nun diese Anfrage leiten soll, verschluckt er sie.
Um das zu umgehen, gibt es NAT. Damit kann man Anfragen die sich an bestimmte Ports richten zu einem am Router angeschlossenen Rechner durchschleusen damit er diesen Port bedienen kann.
Nur falls du auch auf einem anderen Rechner einen Webserver laufen lassen willst:
Wenn jetzt allerdings auch auf einem anderen Rechner der am Router angeschlossenen ist, auch ein Webserver laufen soll, kann man natürlich keine an Port 80 gerichtete Anfragen mehr an ihn durchleiten da ja bereits diese Anfragen schon an den Rechner mit der IP 192.168.1.33 weitergegeben werden.
In dem Fall musst du beim Webserver des 2. Rechners den Port an dem er hängt, in der httpd.conf ändern und diesen Port auf den 2. Rechner weiterleiten lassen vom Router.
So, hab mal reichlich Informationen hier reingepackt, vielleicht verstehst du nun die Funktionsweise des NAT-Systems besser.
Wenn du grad dabei bist, könntest du mir dann vielleicht bei einem ähnlichen Problem von mir helfen?
Bei meinem Router kommt, wenn ich auf "PORTS" klicke, folgendes:
192.168.0.2 ist die lokale IP vom Serverrechner.
Ich hab auch schon versucht, die Checkbox unten zu aktivieren, allerdings ohne Ergebnis...
Gibts da noch ne Einstellung, die ich aktivieren muss? In meinem Menu gibts folgende Punkte:
SYSTEM
LAN
PORTS
STATIC ROUTE
CONTENT FILTER
unter Static Route kommt dann sowas. Bei Klick auf "Edit" sowas.
Unter "LAN" ist dann noch sowas...
Was ist nun genau dein Problem?
Das der Server nicht erreichbar ist oder das er nicht anpingbar ist?
Ersteres glaub ich nicht, denn ich erreiche ihn wenn ich deine im Forum geloggte IP verfolge.
Zum Pingproblem weiß ich leider nichts. Wenn du per Script allerdings checken willst ob dein Server läuft, kannst du das auch ohne Ping regeln.
Schau dir diesen Codeschnipsel an und mach was draus.
Wie Bitte? Mein Server ist zu erreichen? Ich krieg den über meine IP nicht... Liegt das vielleicht daran, dass ich von einem anderen Zugang zugreifen müsste?
Das mit dem Ping ist mir klar, trotzdem danke für den Tipp
Jetzt ist mein Server erstmal offline, der muss noch geschützt werden (Das Zeug, das nicht jeder sehen soll)...
Original geschrieben von wrtlprnft ...Jetzt ist mein Server erstmal offline, der muss noch geschützt werden (Das Zeug, das nicht jeder sehen soll)...
...
Warte etwas, ich poste gleich (wenn ich etwas mehr Zeit habe) eine Lösung die mit vHosts arbeitet.
Wegen dem Problem das du deinen eigenen Server nicht erreichst, kann ich leider nichts sagen, könnte aber sein das es mit der vHost-Lösung mit gefixt wird.
meine Domain ist jetzt wrtlprnft.ath.cx. Kannst du drauf zugreifen? Bei mir tut sich immer noch nix...
In meiner httpd.con steht jetzt (am Schluss):Subdomains hab ich mir noch keine gemacht.
Unter der Adresse oder meiner IP meldet sich immer mein Router...
Original geschrieben von mitaki Nein, tut mir leid, noch immer der "Bad Request"-Fehler, damit bin ich dann leider am Ende meiner Kenntnisse.
...
Hier eine Vermutung bei der ich zu 80 % sicher bin das es den Fehler beschreibt:
Dein Apache läuft scheinbar im SSL-Modus.
Das wäre soweit nicht schlimm, man könnte deinen Server zwar nicht per http:// erreichen, allerdings über https:// wenn dein Router bzw. Firewall nicht den SSL-Port blockieren würde.
Du hast nun also 3 Möglichkeiten:
1.: Du schaltest den SSL-Modus in dem dein Apache läuft aus. Frag mich aber nicht wie das geht, ich war nie in der Verlegenheit das tun zu müssen
2.: Du änderst den Port an dem dein Apache im SSL-Modus lauscht, auf 80.
Dazu musst du nach der Direktive "DEF_SSL Listen" in der Apachekonfigurationsdatei suchen und ihren Wert auf 80 ändern (DEF_SSL Listen 80). Vermutlich steht dort derzeit "DEF_SSL Listen 443" oder die Direktive ist nicht gesetzt.
3.: Du leitest den SSL Port von dem ich glaube das es 443 ist in deinem Router auf deinen Rechner, bzw. schaltest diesen Port in deinen IP-Tables frei (benutzt ja Linux. ).
In dem Moment dürfte dein Server über die Adresse https://wrtlprnft.ath.cx/ erreichbar sein.
Ich persönlich wäre für Möglichkeit 1, denn dann brauchst du nicht diese unpopulären https://-Adressen benutzen.
Allerdings musst du dafür deine httpd.conf selbst unter die Lupe nehmen und a bisserl per Google recherchieren, ich hab kaum Erfahrung mit SSL.
Methode 3: Nope. Unter dem umgeleiteten SSL-Port Passiert nix...
Methode 2: DEF_SSL Listen 80, direkt eingetragen unter Listen 80 (Was schon da stand) gibt beim Neustarten einMethode 1: Muss ich mal schau, ob ich das schaffe...
EDIT: /opt/lampp/lampp stopssl Bringt aber bei meinem Prob auch nix...
Nochmal meine Konfigurationsänderungen, falls das was bringt: