Symbolische Links funktionieren nicht, .htaccess funktioniert nicht

Fehlerbeschreibung

Die Startseite von Magento lässt sich laden, aber viele oder alle Unterseiten, darunter Produkt- und Kategorie-Links, führen zu einem Fehler.

Ursachen und Lösungen

Magento-Testumgebung mit Beispieldaten

  • Wenn Sie eine Magento-Testumgebung mit Beispieldaten einrichten, werden die Produkt- und Kategorie-Links nicht sofort funktionieren. Das Problem kann durch Neuindizierung behoben werden. Gehen Sie zu System > Index-Verwaltung und Klicken Sie dort auf Neuaufbau in der Zeile „Katalog URL Rewrites“. Danach sollten alle Links im Magento-Shop mit Beispieldaten funktionieren.

Typische Flüchtigkeitsfehler

  • Ist die .htaccess im Hauptverzeichnis von Magento vorhanden? Hin und wieder gibt es Situationen, in den versteckte Dateien beim Komprimieren des Verzeichnisses nicht berücksichtigt werden. Folglich sind sie nach dem Enpacken nicht vorhanden.
  • Wurde die .htaccess umbenannt? Die Datei muss mit einem Punkt beginnen und in Kleinbuchstaben geschrieben sein.

Konfiguration von Apache

Nach dem Umzug in eine neue Serverumgebung kann es sein, dass die symbolische Links von Magento nicht mehr funktionieren. Dies hängt oft mit der Konfiguration von Apache zusammen.

In der Standardkonfiguration von Apache in Ubuntu Server 10.04 LTS ist die Unterstützung von .htaccess über AllowOverride None deaktiviert. Zusätzlich ist das Apache-Modul mod_rewrite standardmäßig nicht geladen.

  • Ist die Verwendung von .htaccess erlaubt? Bei Ubuntu Server 10.04 LTS befindet sich die betroffene Konfigurationsdatei von Apache unter /etc/apache2/sites-available/default:
<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>
<Directory /var/www/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    allow from all
</Directory>

Vorausgesetzt Ihre Magento-Installation befindet sich im Verzeichnis /var/www/ (oder einem Unterverzeichnis), wird die Nutzung von .htaccess mit dem zweiten Befehl AllowOverride None verboten. Ändern Sie die entsprechende Zeile zu AllowOverride All:

<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>
<Directory /var/www/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    allow from all
</Directory>

Starten Sie Apache z. B. mit /etc/init.d/apache2 restart neu, um die geänderte Konfiguration zu laden.

  • Ist der Apache-Modul rewrite aktiviert? In diesem Fall sind weitere Informationen in der Ausgabe von phpinfo() auffindbar: STRG+F nach mod_rewrite. Versuchen Sie andernfalls das Modul mit a2enmod zu aktivieren und Apache neu zustarten:
a2enmod rewrite
/etc/init.d/apache2 restart

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.