[TYPO3-german] offtopic: sehr viele redirects in .htaccess auslagern
Stephan Schuler
Stephan.Schuler at netlogix.de
Sun Jul 14 12:09:32 CEST 2013
Hallo Domi.
Zunächst hat Peter natürlich Recht, Redirects in der vhost-Datei sind natürlich effizienter als Redirects in einer .htaccess-Datei. Das liegt daran, dass die .htaccess-Datei potenziell bei jedem Click neu angefasst werden muss, während der vhost beim Apache-Start einmal in den Speicher geladen wird und sich dann nicht mehr verändert.
Der relevante Geschwindigkeitsvorteil ergibt sich allerdings meines Wissens nur genau dann, wenn *keine* .htacces-Datei existiert sondern alles im vhost steht (also wenn "AllowOverride none" gesetzt ist). Sobald eine .htaccess-Datei existiert oder existieren könnte, findet ein quälend langsamer Dateisystemzugriff statt. Da der Apache aber so schlau ist, eine einmal eingelesene Datei nicht nochmal zu parsen, ist der konkrete Inhalt der .htaccess-Datei und die Anzahl der Redirects darin dann wieder nachrangig.
Nachteil an der vhost-Variante: Du musst einerseits Zugriff drauf haben, und andererseits den Apache bei jeder Änderung neu laden. Das geht nicht immer.
Du möchtest dir aber mal das Konzept der "RewriteMap" ansehen:
http://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewritemap
Dadurch kann man Rewrite-Rules auslagern. Es stehen zwar die Optionen txt und dbd zur Verfügung, aus Performancegründen würde ich aber zu dbm raten.
Die rewritemap-Direktive muss in den vhost, die Rule selbst kann in eine .htaccess-Datei. Muss aber nicht, auch die kann natürlich in den vhost.
Das Dateiformat schreibt sich wie RewriteRule, wobei lediglich die Parameter "TestString" und "CondPattern" in die Datei dürfen. Eine Regel pro Zeile, deshalb afaik keine Möglichkeit von RewriteCond.
Wenn ich den folgenden Satz der Doku richtig interpretiere, kannst du den Inhalt der DB-Dateien nachträglich ändern, ohne dass hierzu der Apache neu geladen werden muss:
"The looked-up keys are cached by httpd until the mtime (modified time) of the mapfile changes, or the httpd server is restarted. This ensures better performance on maps that are called by many requests."
Und natürlich ist die Länge der Liste der Weiterleitungen *nicht unwichtig*. Je mehr Weiterleitungen bei jedem Click geprüft werden müssen desto länger dauert jeder Click. Und das trifft auch und insbesondere auf solche Clicks zu, bei denen keine Weiterleitung stattfindet. Weil da natürlich alle Regeln geprüft werden müssen, wohingegen URLs mit Weiterleitungstreffer frühzeitig abbrechen können. Lediglich in Anbetracht der Cachingeigenschaften des Apache und weil sich bei der Anforderung vieler Regeln ja nicht einfach welche wegstreichen lassen ist das dann wieder egal.
Gruß,
Stephan Schuler
Web-Entwickler
Telefon: +49 (911) 539909 - 0
E-Mail: Stephan.Schuler at netlogix.de
Website: media.netlogix.de
--
netlogix GmbH & Co. KG
IT-Services | IT-Training | Media
Neuwieder Straße 10 | 90411 Nürnberg
Telefon: +49 (911) 539909 - 0 | Fax: +49 (911) 539909 - 99
E-Mail: info at netlogix.de | Internet: http://www.netlogix.de
netlogix GmbH & Co. KG ist eingetragen am Amtsgericht Nürnberg (HRA 13338)
Persönlich haftende Gesellschafterin: netlogix Verwaltungs GmbH (HRB 20634)
Umsatzsteuer-Identifikationsnummer: DE 233472254
Geschäftsführer: Stefan Buchta, Matthias Schmidt
________________________________________
Von: typo3-german-bounces at lists.typo3.org [typo3-german-bounces at lists.typo3.org]" im Auftrag von "Peter Russ [peter.russ at 4many.net]
Gesendet: Montag, 1. Juli 2013 13:16
An: typo3-german at lists.typo3.org
Betreff: Re: [TYPO3-german] offtopic: sehr viele redirects in .htaccess auslagern
--- Original Nachricht ---
Absender: Domi
Datum: 01.07.2013 12:51:
> Hallo,
>
> ich möchte gerne beim relaunch einer Webseite sehr viele Permanente
> Redirects eintragen. Jedoch wird dann die .htaccess riesen groß. Kann
> man denn die Redirects in eine andere Datei auslagern, ohne die
> eigentliche .htaccess mit den Links zu überfluten?
>
> Merci,
> Dominic
Es ist generell empfehlenswert, dies statt in .htaccess in das Setup des
vhosts einzubauen, da dies weitaus performanter!
jm2c
Peter
--
Fiat lux! Docendo discimus.
_____________________________
uon GbR
http://www.uon.li
http://www.xing.com/profile/Peter_Russ
_______________________________________________
TYPO3-german mailing list
TYPO3-german at lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
More information about the TYPO3-german
mailing list