Frage

Ich weiß, es gibt eine Menge positiver Dinge, die mod-rewrite erreicht.Aber gibt es irgendwelche negative?Natürlich, wenn Sie haben schlecht geschriebenen Regeln, gehen Sie zu Probleme haben.Was aber, wenn Sie haben hohe Volumen Website und Ihre ständig mit mod-rewrite, wird es haben erhebliche Auswirkungen auf die Leistung?Ich habe eine schnelle Suche für einige benchmarks auf Google und fand nicht viel.

War es hilfreich?

Lösung

Ich habe mod_rewrite auf Websites, die Millionen/hits/Monat ohne erhebliche performance-Probleme.Sie müssen wissen, welche schreibt angewendet werden zunächst je nach Ihren Regeln.

Mit mod_rewrite ist wahrscheinlich schneller als das Parsen der URL mit Ihrer aktuellen Sprache.

Wenn Sie sind wirklich besorgt über die Leistung, nicht verwenden .htaccess Dateien, die langsam sind.Legen Sie alle Ihre rewrite-Regeln in Ihrer Apache-Konfiguration, die nur einmal gelesen auf Start. .htaccess Dateien erneut analysiert, bei jeder Anforderung, zusammen mit jeder .htaccess Datei im übergeordneten Ordner.

Andere Tipps

Zu wiederholen, was Ryan sagt, oben, Regeln in einer .htaccess kann wirklich weh Ihre Ladezeiten auf ein geschäftiger Ort im Vergleich zu den Regeln in Ihrer config-Datei.Wir haben zunächst versucht, diese (~60million Seiten/Monat), aber nicht sehr lange dauern, bis unsere Server angefangen zu Rauchen :)

Der offensichtliche Nachteil die Regeln in deiner config ist, müssen Sie zum erneuten laden der config-wenn Sie ändern Ihre Regeln.

Das Letzte flag ("L") ist nützlich für die Beschleunigung der Ausführung der Regeln, einmal mehr, auf die Häufig zugegriffen Regeln sind in Richtung der oberen und bewertet zuerst.Es kann machen die Wartung viel schwieriger, wenn Sie haben eine lange Reihe von Regeln, obwohl ich vergeudet habe ein paar sehr frustrierende Stunden eines morgens, als ich beim Schnitt auf halbem Weg nach unten die Liste meiner Regeln und hatte eine oben, das war trapping-mehr als gedacht!

Wir hatten Schwierigkeiten, auch die einschlägigen benchmarks und landete unsere eigenen internen suite von tests.Einmal bekamen wir unsere Regeln aussortiert, die ordnungsgemäß bestellt und in die Apache conf, wir finden nicht viel von einer negativen performance-Auswirkungen.

Wenn Sie sind besorgt über die apache-performance, eine Sache zu prüfen, wenn Sie haben eine Menge von rewrite-Regeln ist die "skip" - Markierung.Es ist ein Weg für überspringen-matching-Regeln.Also, was auch immer Aufwand geleistet worden wäre, auf passende gespeichert.

Seien Sie aber vorsichtig, ich war auf einem Projekt, das verwertet der "überspringen" - fahne, eine Menge, und es machte Wartung schmerzhaft, da es von der Reihenfolge abhängt, in der die Dinge werden in die Datei geschrieben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top