Was ist Apache?

Gast #3665110
Lesenswert?

Was ist Apache? Diese Frage hab ich mir gestellt. Ein Webserver - so 
zeigt es mir auch Wikipedia an - aber was genau muss ich mir darunter 
vorstellen? Kann ich es mit einem Interpreter vergleichen, z.B. Java 
oder Python? Weil schaue ich mir eine Webseite an, dann stehen da lauter 
Kommandos. In Python kann ich auch in eine Datei ein Kommando 
reinschreiben, dann sage ich -

python Programm.py

und das Programm wird ausgeführt.

Ist das Apache also etwas Ähnliches, wo man (theoretisch) dann sagen 
kann

apache Startseite.html?
Gast #3665116
Lesenswert?

Im einfachsten fall ist es wirklich nur ein Webserver. Er liefert nur 
Dateien aus. Er interpretiert aber nichts. Es kommst also eine Anfrage 
per TCP an, dort ist enthalten was der Browser sehen will. Er öffnet die 
passende Datei und liefert sie 1:1 aus.

Zusätzlich, kann er auch Anmeldungen und Berechtigungen prüfen.
Gast #3665126
Lesenswert?

Hallo Möchtegernprogrammierer,

stell Dir vor, Du möchtest eine  Webseite in Deinem Browser begucken. 
Hierzu tippst Du eine Adresse ein (www.zydek.de ;-) ) Diese Domain hat 
irgendwo eine verlinkung auf einen Server welcher Inhalte zu dieser 
Homepage hat. Auf diesem Server muss also ein Programm laufen, welches 
html code zu deinem browser sendet um eine nette Seite zu betrachten.
Genau das macht Apache.
Im Apache - Pfad auf diesem server (oder auf deinem eigenen Rechner wenn 
du darauf apache installiert hast) findest Du einen Ordne der sich 
htdocs nennt. Lege mal eine .html Datei dort hinein und tippe in deinen 
Browser localhost/namedeinerdatei.html ein. oder von einem anderen 
Rechner über die Ip wie z.b. 192.168.178.22/namedeinerdatei.html.
Du kannst die datei dann sehen.
Um apache zu pimpen kannst Du auch php dazuinstallieren, eine mysql 
datenbank oder oder oder.
Einfacher geht die installation zum kompletten webserver mittels xampp.

Viele Grüße

Jörg
Gast #3665256
Lesenswert?

Ursprünglich war ein Webserver letztendlich nichts anderes als ein nur 
lesender Fileserver - Man sagt dem Server, welche Datei man haben will, 
und der liefert die aus. Die Kommandos, die in den Webseiten stehen, die 
du dir angeschaut hast, haben nichts mit dem Server zu tun, sondern sind 
für deinen Browser.
Heutzutage liefern Webserver in der Regel auch dynamische Inhalte aus, 
d.h. die  Webseite liegt nicht schon fertig als Datei auf dem Server, 
sondern wird bei einer Anfrage vom Server spontan generiert und direkt 
ausgeliefert. Es gibt da inzwischen auch noch einiges mehr, aber das ist 
so die Grundidee.
Persönliche Seite #3665353
Lesenswert?

Peter II schrieb:
> er liefert alles (Bilder, Video, js, pdf ... )

Aber keine Pizza ;-)

Rolf Magnus schrieb:
> Ursprünglich war ein Webserver letztendlich nichts anderes als ein nur
> lesender Fileserver

Das stimmt nicht, HTTP sieht auch kommandos für veränderliche Zugriffe 
vor (PUT, DELETE,...)

Ein Webserver bietet einfach einen Dienst (HTTP) per TCP an. So Wie ein 
Mailserver POP/IMAP/SMTP anbietet.
Gast #3665410
Lesenswert?

Möchtegernprogrammierer schrieb:

> Ist das Apache also etwas Ähnliches, wo man (theoretisch) dann sagen
> kann
>
> apache Startseite.html?

Nicht ganz. Apache ist die Schnittstelle zwischen der Aussenwelt und dem 
Server. Er stellt einen Kommunikationskanal zur Verfügung über den ein 
Browser Informationen anfordern kann die dann zurückgeliefert werden.

Also in der Grundversion z.B.:
Anfrage: Browser -> Apache -> Webseite.html
Antwort: Browser <- Apache <- +

Mit einem Plugin kann er aber auch als Interpreter arbeiten (Dazu wird 
das Plugin der entsprechenden Sprache, z.B. python benötigt) und kann 
dann z.B. Datenabfragen in Webseiten verarbeiten.

Mit dem python Plugin (Nach der Abfrage der Webseite):
Anfrage: Browser -> Apache -> python-plugin <-> script.py
Antwort: Browser <- Apache <- +

Analog dazu wenn ein Benutzer vor dem Rechner sitzt:
Anfrage: Tastatur -> Shell/cmd -> python <-> script.py
Antwort: Monitor  <- Shell/cmd <- +
Gast #3665413
Lesenswert?

Rolf Magnus schrieb:
> Heutzutage liefern Webserver in der Regel auch dynamische Inhalte aus,
> d.h. die  Webseite liegt nicht schon fertig als Datei auf dem Server,
> sondern wird bei einer Anfrage vom Server spontan generiert und direkt
> ausgeliefert.

Ok - ist dann auf einem anderen Rechner das Surfprogramm - z.B. der 
Internetexplorer oder das Firefox der Apache-Client?
#3665975
Lesenswert?

Der Browser ist im übrigen ein Interpreter. So kannst du z.B. machen:

firefox htmldatei.html

Browser können ein paar Sprachen interpretieren:
 - html: Damit wird der Aufbau einer Seite beschrieben
 - css: Ist eng mit html verknüpft. Damit kann die Seite noch zusätzlich 
aufgehübscht werden
 - javascript: Damit kann man richtige Programme schreiben die z.B. 
Daten verarbeiten

Python geht aber leider nicht :/

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren