Forum: PC-Programmierung Was ist Apache?


von Möchtegernprogrammierer (Gast)


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?

von JojoS (Gast)


Lesenswert?

Versuche mal rauszukriegen was ein Server und was ein Client ist.

von Peter II (Gast)


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.

von Jörg Zydek (Gast)


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

von DirkB (Gast)


Lesenswert?

Du kannst es mit einem Lieferdienst vergleichen.

von Dario B. (Gast)


Lesenswert?

ist sowas wie ein lieferdienst - rufst du bekommst du nicjt pizza und 
cola, sondern html

von Peter II (Gast)


Lesenswert?

Dario B. schrieb:
> ist sowas wie ein lieferdienst - rufst du bekommst du nicjt pizza und
> cola, sondern html

er liefert alles (Bilder, Video, js, pdf ... )

von Rolf Magnus (Gast)


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.

von Läubi .. (laeubi) Benutzerseite


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.

von Blinky (Gast)


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 <- +

von Möchtegernprogrammierer (Gast)


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?

von Blinky (Gast)


Lesenswert?

Möchtegernprogrammierer schrieb:
> Ok - ist dann auf einem anderen Rechner das Surfprogramm - z.B. der
> Internetexplorer oder das Firefox der Apache-Client?

Ja, das ist der Client zu einem Webserver Programm.

von Dirk B. (dirkb2)


Lesenswert?

Ja.

Ein Server stellt einen Service zur Verfügung.
Ein Client nutzt einen Service.

Wenn die Beiden zusammen arbeiten, sollte es schon der gleiche Service 
sein.

von Paul Baumann (Gast)


Lesenswert?

Vielleicht meint er auch nur die Indianer...

https://www.youtube.com/watch?v=a6Jdarkau5E

;-)

MfG Paul

von Simon S. (-schumi-)


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 :/

von Rolf Magnus (Gast)


Lesenswert?

Läubi .. schrieb:
> 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,...)

Die gab es in HTTP/1.0 noch nicht.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.