Htaccess

Aus Contao Community Documentation

Mit der Erweiterung htaccess lässt sich die .htaccess Datei aus dem Backend heraus konfigurieren.

Erweiterungs-Übersicht
Name des Entwicklers Tristan Lins
Version der Erweiterung 2.0.0
Kompatibilität mit Contao Version 2.9+
Link zum Extension Repository http://www.contao.org/erweiterungsliste/view/htaccess.de.html
Link zum Tracker http://contao-forge.org/projects/htaccess
Abhängig von ff. Erweiterungen MultiColumnWizard


.htaccess Editor

Der .htaccess Editor erlaubt es die .htaccess Datei aus dem Backend heraus zu bearbeiten. Damit ist jedoch kein einfacher Code-Editor gemeint, sondern eine dynamische Konfiguration der .htaccess Datei.

Der Editor erlaubt die Konfiguration aller wichtigen Funktionen durch die Bearbeitungsmaske.

Installation

Die Installation erfolgt einfach über den Erweiterungskatalog/die Erweiterungsverwaltung. Der Name der Erweiterung ist htaccess.

Htaccess editor.png

Nach der Installation ist im Backend und System ein neuer Menüpunkt .htaccess Editor zu finden. Es empfiehlt sich, nach der Installation zuerst einige Voreinstellungen zu laden, zur Verfügung stehen contao mit den Contao Standardeinstellungen (wie in .htaccess.default) und html5boilerplate welches ein Misch aus wichtigen Contao Einstellungen und html5boilerplate Einstellungen ist.

Htaccess settings.png

Versionierung

Ab Version 2.0.0 rc2 werden die vorherigen Versionen gespeichert. Diese können über das Feld Vorherige Version laden wiederhergestellt werden. Die Versionen werden unter system/config/htaccess.<timestamp>.php gespeichert.

Htaccess previous versions.png

Templating

Templates können nur als komplettes Set ausgeliefert werden. Die Templates beginnen mit htaccess_ und enden auf das ausgewählte Set. Z.B. htaccess_base_contao.

Alle verfügbaren Templates:

  • htaccess_base_contao.html5 / *.tpl
  • htaccess_base_h5bp.html5 / *.tpl
  • htaccess_custom_contao.html5 / *.tpl
  • htaccess_custom_h5bp.html5 / *.tpl
  • htaccess_deflate_contao.html5 / *.tpl
  • htaccess_deflate_h5bp.html5 / *.tpl
  • htaccess_etag_contao.html5 / *.tpl
  • htaccess_etag_h5bp.html5 / *.tpl
  • htaccess_etag_headers_contao.html5 / *.tpl
  • htaccess_etag_headers_h5bp.html5 / *.tpl
  • htaccess_expires_contao.html5 / *.tpl
  • htaccess_expires_h5bp.html5 / *.tpl
  • htaccess_headers_contao.html5 / *.tpl
  • htaccess_headers_h5bp.html5 / *.tpl
  • htaccess_mime_contao.html5 / *.tpl
  • htaccess_mime_h5bp.html5 / *.tpl
  • htaccess_rewrite_contao.html5 / *.tpl
  • htaccess_rewrite_h5bp.html5 / *.tpl

Einzelne Templates können natürlich überschrieben werden, dafür müssen diese direkt im templates/ Verzeichnis der Installation abgelegt werden.

Konfiguration

Seit Version 2.0.0 rc2 wird eine eigene Konfigurationsdatei erstellt. Anstelle die Einstellungen in der system/config/localconfig.php zu speichern, wird eine Datei system/config/htaccess.php erzeugt. Verwaltet wird diese Datei über die Klasse HtaccessConfig. Wenn die Konfiguration mittels einer Extension verändert werden soll, muss also diese Klasse verwendet werden und nicht die Config Klasse. Die HtaccessConfig kann als drop-in-replacement zur Config Klasse verwendet werden, so wird es bspw. in dem eigenen DC_File Treiber gemacht.

class MyClass extends System
{
  /**
   * @var HtaccessConfig
   */
  $Config;
 
  public function __construct()
  {
    $this->import('HtaccessConfig', 'Config');
    parent::__construct();
  }
}

Die Module

ETag Modul

Htaccess etag.png

Das ETag Modul hat eigentlich nur eine Aufgabe, die ETags zu deaktivieren. Da die ETags in Contao überhaupt nicht unterstützt werden, gibt es hier keine weiteren Einstellungen.

MIME Modul

Htaccess mime.png

Mit dem MIME Modul lässt sich kontrollieren, welchen MIME Type und welches MIME Encoding der Webserver an den Browser schickt. Damit kann das Verhalten des Browsers beeinflusst werden.

Deflate Modul

Htaccess deflate.png

Das Deflate Modul komprimiert den Response live mit gzip, so dass weniger Daten übertragen werden müssen. Dies macht aber meistens nur für Text-Inhalte (HTML, CSS, JavaScript) Sinn, bei Binärdaten (Bilder, Videos) kann es sogar zu einer Vergrößerung der Datenmenge kommen.

Hier kann eingestellt werden, welche Dateien durch Deflate komprimiert werden sollen.


Hinweis.png Hinweis: Das html5boilerplate Templateset erwartet hier einen MIME Type, keine Dateiendung!


Expires Modul

Htaccess expires.png

Das Expires Modul setzt die Verfallszeit für Dateien und bestimmt so, wann ein Browser die Datei aktualisiert.

Custom Modul

Htaccess custom.png

Das Custom Modul dient dazu, eigene Regeln in die .htaccess Datei zu bringen. Über das Custom Modul kann jeder beliebige Code in die .htaccess Datei gebracht werden.

Rewrite Modul

Htaccess rewrite.png

Das Rewrite Modul kontrolliert die Rewrite Regeln. Es lassen sich eigene Regeln anlegen oder aber dynamische Regeln erzeugen lassen. Bspw. für Domains mit und ohne "www.". Auch der Pfad Suffix .html lässt sich hier ändern.

www. hinzufügen und entfernen

Die Option www. hinzufügen bewirkt, dass Domains die in der Seitenstruktur mit www. angelegt wurden so umgeschrieben werden, dass von der Domain ihre-domain.de auf www.ihre-domain.de umgeleitet wird. (Vorausgesetzt example.com ist nicht als eigener Startpunkt eingetragen). Tragen Sie dafür einfach in der Seitenstruktur im "Startpunkt der Website" unter Domain www.ihre-domain.de ein.

Die Option www. entfernen bewirkt, dass Domains die in der Seitenstruktur ohne www. angelegt wurden so umgeschrieben werden, dass von der Domain www.ihre-domain.de auf ihre-domain.de umgeleitet wird. (Vorausgesetzt www.ihre-domain.de ist nicht als eigener Startpunkt eingetragen). Tragen Sie dafür einfach in der Seitenstruktur im "Startpunkt der Website" unter Domain ihre-domain.de ein.


Hinweis.png Hinweis: Beide Optionen lassen sich auch kombinieren!


html5boilerplate Features

Htaccess h5bp.png


Hinweis.png Hinweis: Diese Features sind auch in dem contao Templateset verfügbar!


Neueste IE Engine erzwingen bewirkt, dass der Browser nicht in den Kompatibilitätsmodus wechselt, sondern die neueste IE Engine zum Rendern verwendet.

Cross-Domain AJAX Requests erlaubt AJAX Requests über verschiedene Domains. Kann im Multi-Domain Betrieb nützlich sein.

Includes in CSS/JS Dateien erlauben erlaubt die Nutzung von Server-Side-Includes in *.combined.css/js Dateien. Details dazu sind der html5boilerplate .htacces Beispieldatei zu entnehmen.

IE Flimmern bei CSS rollover verhindern bewirkt, dass beim Nachladen von Grafiken die durch ein CSS rollover entstehen können kein Flimmern (kurzes verschwinden des Hintergrundes) entsteht.

Ansichten
Meine Werkzeuge

Contao Community Documentation

Nein, der Hangout ist noch nicht vorbei, wir schweigen nur. Es heisst ja auch hangout und nicht bryll out.

Christian Schiffler
Navigation
Verstehen
Verwenden
Entwickeln
Verschiedenes
Werkzeuge