Markus: Debian Apache

Hallo Forum,

habe eine Standartinstallation von Debian mit dem Apache/1.3.29. Die httpd.conf hab ich mittlerweile wieder in den Standartzustand zurück versetzt.

Jetzt zu meinem Problem. Ich kann auf den Webserver nicht zugreifen. Hab es über die Ip´s 192.168.10, 127.0.0.1 und localhost probiert. Es kommt jedesmal der Fehle 403, kein Zugriff.

Hier mal die Verzeichnis-Rechte aus der httpd.conf (ist ja standart)

<Directory />
    Options SymLinksIfOwnerMatch
    AllowOverride None
</Directory>

<Directory /var/www/>

Options Indexes Includes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

das verzeichnis /var/www/ hat die Rechte 777.

Wäre nett wenn mir jemand einen Tip geben könnte.

Danke
Markus

  1. Hallo Markus,

    <Directory />
        Options SymLinksIfOwnerMatch
        AllowOverride None

    # ich hoffe der ist nur local installiert

    </Directory>
    [...]
    das verzeichnis /var/www/ hat die Rechte 777.

    zeigt die Anweisung "DocumentRoot" auch auf "/var/www"?

    Gruß aus Berlin!
    eddi

    1. hallo eddi,

      jup der Server ist nur local installiert trotzdem würde mich interessieren wie <Directory /> aussehen müßte wenn er im Internet erreichbar wäre. Auf was zeigt <Directory />? Auf den Server-Root also "/" oder auf den Root vom Apachen also "/var/www". Ich vermute mal auf das Rootverzeichnis vom kompletten Server.

      DocumentRoot zeigt auch genau auf /var/www.

      1. Hallo Markus,

        jup der Server ist nur local installiert trotzdem würde mich interessieren wie <Directory /> aussehen müßte wenn er im Internet erreichbar wäre.

        <Directory />
         Options       FollowSymLinks
         AllowOverride None
         order         deny,allow
         deny          from all

        <LimitExcept POST GET>
          Require valid-user
         </LimitExcept>

        <Files ~ "^.ht">
          Order allow,deny
          Deny from all
         </Files>

        DirectoryIndex index.php index.html index.htm index.xhtml index.xht index
        </Directory>

        Aber dazu mehr unter http://httpd.apache.org/docs/ und http://aktuell.de.selfhtml.org/artikel/server/apacheconf/index.htm

        Auf was zeigt <Directory />? Auf den Server-Root also "/" oder auf den Root vom Apachen also "/var/www".

        auf das oberste Verzeichnis also "/".

        DocumentRoot zeigt auch genau auf /var/www.

        Nun das ist seltsam, das ein Status 403 kommt, da Du Multiviews eingegeben hast - vielleicht stöhrt er sich an AllowOverride None in <Directory /var/www>. Dies soll zwar nur .htaccess-Anweisungen außer Kraft setzen...

        Sonst stelle eine index.html in das Verzeichnis ein und steuere diese direkt an und berichte

        Gruß aus Berlin!
        eddi

        1. Die Standart index.html ist vorhanden. Wenn ich die direkt aufrufen will, kommt die Meldung Seite nicht gefunden.

          Danke dir
          Gruß
          Markus

          1. ist der 404 Fehler :)

        2. hallo,

          <Directory />
          Options       FollowSymLinks
          AllowOverride None
          order         deny,allow
          deny          from all

          </Directory>

          Wenn gar nichts klappt, kann dieser Container auch mal testweise auskommentiert werden.

          <LimitExcept POST GET>
            Require valid-user
          </LimitExcept>

          Ist nicht zwingend nötig.

          <Files ~ "^.ht">
            Order allow,deny
            Deny from all
          </Files>

          Gehört hier nicht hinein.

          DirectoryIndex index.php index.html index.htm index.xhtml index.xht index

          Gehört ebenfalls nicht in diesen Directory-Container.

          Auf was zeigt <Directory />? Auf den Server-Root also "/" oder auf den Root vom Apachen also "/var/www".
          auf das oberste Verzeichnis also "/".

          Nein. Es ist das Verzeichnis, in dem der Apache selbst liegt, also /usr/local/apache oder wohin sonst installiert wurde.

          DocumentRoot zeigt auch genau auf /var/www.
          Nun das ist seltsam, das ein Status 403 kommt, da Du Multiviews eingegeben hast

          Wenn die Direktive "Order" überhaupt Wirkung haben soll, muß
            LoadModule access_module modules/mod_access.so
          aktiviert sein.

          Grüße aus Berlin

          Christoph S.

          1. Wenn die Direktive "Order" überhaupt Wirkung haben soll, muß
              LoadModule access_module modules/mod_access.so
            aktiviert sein.

            Das weiß ich jetzt leider nicht, kann ich erst heute abend testen. Wie sieht es aus wenn dieses Modul nicht aktviert ist. Wird dann standartmäßig verweigert oder zugelassen?

            Gruß
            Markus

            1. hallo,

              Wie sieht es aus wenn dieses Modul nicht aktviert ist. Wird dann standartmäßig verweigert oder zugelassen?

              Weder das eine noch das andere. Aber standar_d_mäßig passiert eben überhaupt nichts. Direktiven, die nur von einem geladenen Modul befolgt werden können, werden eben nicht ausgeführt, wenn das Modul nicht aktiv ist.

              Grüße aus Berlin

              Christoph S.

  2. hallo Markus,

    habe eine Standartinstallation

    Nein, das hast du nicht. Es heißt, wenn überhaupt, _Standard_. Und als Standard installiert dir Debian mittlerweile einen Apache 2.0.52.

    Die httpd.conf hab ich mittlerweile wieder in den Standartzustand zurück versetzt.

    Das hast du offenkundig nicht.

    Ich kann auf den Webserver nicht zugreifen. Hab es über die Ip´s 192.168.10, 127.0.0.1 und localhost probiert.

    192.168.10 ist keine gültige IP. Schau mal nach, welche lokalen IP-Adressen überhaupt vorhanden sind. Dazu nimmst du den Konsolenbefehl ifconfig. Mit 127.0.0.1 und localhost sollte es aber klappen, vorausgesetzt, du hast den zugehörigen Eintrag in /etc/hosts stehen.

    was steht denn in den Server-logs /var/log/apache/error_log)?

    Grüße aus Berlin

    Christoph S.

    1. hallo Markus,

      habe eine Standartinstallation

      Nein, das hast du nicht. Es heißt, wenn überhaupt, _Standard_. Und als Standard installiert dir Debian mittlerweile einen Apache 2.0.52.

      achja deutsche sprache schwere sprache :)

      Die httpd.conf hab ich mittlerweile wieder in den Standartzustand zurück versetzt.

      Das hast du offenkundig nicht.

      Das hab ich schon, da ich vor meinen Änderungen eine Sicherung gemacht habe und diese wieder zurückkopiert habe.

      Ich kann auf den Webserver nicht zugreifen. Hab es über die Ip´s 192.168.10, 127.0.0.1 und localhost probiert.

      192.168.10 ist keine gültige IP. Schau mal nach, welche lokalen IP-Adressen überhaupt vorhanden sind. Dazu nimmst du den Konsolenbefehl ifconfig. Mit 127.0.0.1 und localhost sollte es aber klappen, vorausgesetzt, du hast den zugehörigen Eintrag in /etc/hosts stehen.

      das 192.168.10 keine gültige adress ist, ist mir auch klar sollte eigentlich nur zeigen das der Webserver nur local läuft, also nicht über das Internet erreicht werden kann.

      was wird nochmal in etc/hosts eingetragen??? Meinst die dateien hosts.deny und -.allow?

      was steht denn in den Server-logs /var/log/apache/error_log)?

      sorry, da komm ich erst heute abend dazu zu schauen. Ruf ich nur die entsprechenden Ip´s auf oder Localhost, kommt der Fehler 403, ruft ich die index.html die in DocumentRoot hinterlegt ist direkt auf kommt 404

      Grüße aus Frankfurt
      Johann

      1. hallo,

        das 192.168.10 keine gültige adress ist, ist mir auch klar sollte eigentlich nur zeigen das der Webserver nur local läuft, also nicht über das Internet erreicht werden kann.

        Das ist ein Irrtum. Dein Apache ist sehr wohl über das Internet erreichbar, sobald dein Rechner online ist.

        was wird nochmal in etc/hosts eingetragen?

        lokale IP-Adressen und Rechnernamen.

        Meinst die dateien hosts.deny und -.allow?

        Nein, die haben andere Funktionen. Bitte "man hosts" nachlesen.

        Grüße aus Berlin

        Christoph S.

        1. hallo,

          das 192.168.10 keine gültige adress ist, ist mir auch klar sollte eigentlich nur zeigen das der Webserver nur local läuft, also nicht über das Internet erreicht werden kann.

          Das ist ein Irrtum. Dein Apache ist sehr wohl über das Internet erreichbar, sobald dein Rechner online ist.

          kannst mir glauben das er nicht über´s internet erreichbar ist auch wenn ich online bin. Es spielt auch keine Rolle bei meinem Problem

          was wird nochmal in etc/hosts eingetragen?

          lokale IP-Adressen und Rechnernamen.

          5sek. nachdem ich es abgeschickt habe ist es mir auch wieder eingefallen.

          Meinst die dateien hosts.deny und -.allow?

          Nein, die haben andere Funktionen. Bitte "man hosts" nachlesen.

          mir ist bekannt wofür diese Dateien sind

          Grüße aus Frankfurt
          Marku

          1. hallo markus,

            Dein Apache ist sehr wohl über das Internet erreichbar, sobald dein Rechner online ist.
            kannst mir glauben das er nicht über´s internet erreichbar ist auch wenn ich online bin.

            Nur dann, wenn deine Firewall entsprechend eingestellt ist.

            Grüße aus Berlin

            Christoph S.

            1. Nur dann, wenn deine Firewall entsprechend eingestellt ist.

              das ist sie. Bringt mich aber einer Lösung meines Problems nicht wirklich näher.

    2. Nein, das hast du nicht. Es heißt, wenn überhaupt, _Standard_. Und als Standard installiert dir Debian mittlerweile einen Apache 2.0.52.

      Immer diese Klugscheisser ;-)
      Wenn man die Rechtschreibung anderer bemängelt, dann sollte man ihrer mächtig sein und die Anrede Dir groß schreiben (das nur am Rande). Zum Thema Apache: Apache 2.0.52 ist keineswegs Standard, denn eine Standardinstallation basiert auf woody und nicht auf testing.

      greetz
      roadrunner

      1. hallo,

        Wenn man die Rechtschreibung anderer bemängelt, dann sollte man ihrer mächtig sein und die Anrede Dir groß schreiben

        Nein.

        Zum Thema Apache: Apache 2.0.52 ist keineswegs Standard, denn eine Standardinstallation basiert auf woody und nicht auf testing.

        Eine Standard-Installation beruht auf apt-get.

        Grüße aus Berlin

        Christoph S.

        1. Zum Thema Apache: Apache 2.0.52 ist keineswegs Standard, denn eine Standardinstallation basiert auf woody und nicht auf testing.

          Eine Standard-Installation beruht auf apt-get.

          Absolut nicht. Bei einer Standardinstallation (stable - alles andere ist kein Standard) wirst Du gefragt ob du dselect oder tasksel benutzen möchtest. Und selbst wenn Du apt-get einsetzt und die Installation auf den neusten Securitystand bringst, haben bei einer Standardinstallation in der sources.list andere Quellen außer die der stable nichts verloren.

          http://packages.debian.org/stable/web/apache

          greetz
          roadrunner