Apache mit mod_rewrite auf Ubuntu und Ubuntu Server

Wenn man Apache mit mod_rewrite unter Ubuntu oder Ubuntu Server verwenden will, muss es erst aktivieren.
Standardmäßig ist es nicht aktiviert und man erhält folgenden Fehler, sobald man "RewriteEngine on" oder "RewriteBase" in einer .htaccess Datei angibt.
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, webmaster@localhost and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
Um mod_rewrite zu aktivieren geht man so vor:
  • Modulkonfiguration aufrufen:
    sudo a2enmod
  • Gewünschtes Modul angeben:
    rewrite
  • Falls noch nicht ohnehin geschehen (z.B. für Passwort-Schutz durch htaccess) die Apache Konfiguration anpassen:
    sudo vi /etc/apache2/sites-available/default
  • AllowOverride bearbeiten: von None auf All ändern
  • Apache neustarten:
    sudo /etc/init.d/apache2 force-reload
Jetzt sollte mod_rewrite funktionieren!