Directory-Listing Icons werden nicht angezeigt

  • Hallo!


    Ich habe gerade für ein Verzeichnis, das über eine Subdomain aufgerufen wird per .htaccess Options +Indexes aktiviert.
    Die Auflistung findet statt, allerdings werden die Icons nicht angezeigt.
    Der Apache sucht diese unter /verzeichnis/icons/*


    Gibt es dafür eine Lösung, außer diese entsprechend immer hoch zu laden?


    Gruß
    Martin

  • Es handelt sich ebenfalls um Debian. mod_alias ist aktiviert.


    Ebenfalls kann ich nachvollziehen, dass durch die alias.conf standardmäßig eben dieser Alias angelegt wird.
    Nur leider bleibt dieser ohne Funktion. Zumindest unterhalb einer Subdomain.

  • OK...dann habe ich aktuell keine Idee. Bei mir habe ich eine Subdomain angelegt welche auf ein Unterordner in htdocs zeigt und dann eine .htaccess mit "Options +Indexes" angelegt. Noch ein paar Dateien rein kopiert und im Webbrowser werden die Icons normal geladen.


    Kannst du denn ein Icon per Hand laden? z.B. http://<domain>/icons/back.gif

  • Also genau die selbe Konstellation wie bei mir... hmm...


    Bei direktem Aufruf eines Icons erhalte ich wie vermutet "The requested URL /icons/back.gif was not found on this server.".
    In /usr/share/apache2/icons existieren diese jedoch.


    Der error.log vermeldet, dass die Datei /var/www/xxx/htdocs/subdomain/icons nicht exisitert. :confused:


    Vielen Dank auf jeden Fall für deine Bemühungen!

  • Eigentlich deutet das ja daraufhin das der Alias nicht gesetzt wird. Mal ins blaue geschossen......ist vielleicht das Alias Modul aktiviert aber die Config dazu nicht?


    Sprich zeigte ein

    Code
    ls -l /etc/apache2/mods-enabled/alias*

    auch alias.load und alias.conf an?


    Bei mir sieht das folgendermaßen aus


    Code
    lrwxrwxrwx 1 root root 28 16. Sep 18:16 /etc/apache2/mods-enabled/alias.conf -> ../mods-available/alias.conf
    lrwxrwxrwx 1 root root 28 16. Sep 18:16 /etc/apache2/mods-enabled/alias.load -> ../mods-available/alias.load
  • Die Ausgabe stimmt auch bei mir:

    Code
    lrwxrwxrwx 1 root root 28 Sep  3 13:41 /etc/apache2/mods-enabled/alias.conf -> ../mods-available/alias.conf
    lrwxrwxrwx 1 root root 28 Sep  3 13:41 /etc/apache2/mods-enabled/alias.load -> ../mods-available/alias.load


    Und die alias.conf:


    Update
    Kopiere ich die Icons von /usr/share/apache2/icons/ in den aufzulistenden Ordner, bekomme ich diese angezeigt. Es scheint also ein Problem mit dem Alias zu sein.
    Mir ist leider nicht ersichtlich, wie sich dieses Problem lösen lässt :confused:

  • Mit anderen Worten......der Alias kann eigentlich auch nicht woanders überschrieben werden mit einem neuen Pfad sonst würde dies ebenfalls nicht gehen.
    Steht eigentlich etwas im Apache error.log ?


    Du könntest auch einmal probieren die Inhalt der alias.conf noch einmal in /etc/apache2/httpd.conf einzutragen (Neustart des Apache nicht vergessen) und schauen ob der Alias dann funktioniert.

  • Der error.log sagt:


    Code
    [Tue Sep 18 17:28:10 2012] [error] [client xx.xx.xx.xx] File does not exist: /var/www/xx/htdocs/subdomain/icons, referer: http://subdomain.domain.de/


    Nachdem ich die httpd.conf auch nochmal mit der alias.conf gefüttert habe, erhalte ich beim Neustart:

    Code
    [Tue Sep 18 17:30:16 2012] [warn] The Alias directive in /etc/apache2/httpd.conf at line 15 will probably never match because it overlaps an earlier Alias.


    Aber gebracht hat dies nichts...

  • Hm....ok zumindest scheint deine alias.conf ausgewertet zu werden sonst würde die Warnung nicht kommen.
    Hast du vielleicht in einem Ordner davor noch eine .htaccess mit irgendwelchen rewrite Rules welche den Icons umbiegen oder abfangen? Denn mehr fällt mir aktuell auch nicht mehr ein.

  • Ich habe das eben mal überflogen; das Problem liegt vermutlich darin, dass die betroffene Domain in einem Unterverzeichnis konfiguriert wird und daher die RewriteRules nicht mehr greifen.
    In der vHost-Konfiguration (/etc/apache2/sites-available/###.conf) sehen Sie irgendwo etwa folgenden Eintrag:

    Apache Configuration
    # Don't rewrite /cgi-bin/ and /.errorFiles/ URLs:
    RewriteRule ^/(cgi-bin)|(.errorFiles)/.* - [L]


    Erweitern Sie diesen mal einfach testweise um "icons" und starten Apache dann neu:

    Apache Configuration
    RewriteRule ^/[B](icons)|[/B](cgi-bin)|(.errorFiles)/.* - [L]


    Alternativ installieren Sie die aktuelle LiveConfig-Preview (r1823) und lassen die betroffene vHost-Konfiguration neu erstellen (z.B. durch das Speichern irgendeiner Domaineinstellung) - mit der neuen Version werden auch Subdomains standardmäßig mit eigenen <VirtualHost>-Abschnitten eingerichtet. (die bisherige RewriteRule-basierte Konfiguration kann optional natürlich weiterhin so erzeugt werden)


    Viele Grüße


    -Klaus Keppler

  • Ja....ich denke Herr Keppler trifft es wieder ins Schwarze ;)
    Ich hatte heute morgen schon auf die neuste Preview upgedatet und dadurch natürlich die Test Subdomain schon mit der neuen VirtualHost Config erzeugt. Und bei mir lief es ja.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!