Ich versuche, die GZip-Komprimierung für SVG in einer Azure-Website mithilfe von web.config-Transformationen ohne Erfolg zu aktivieren. Hier ist, wie meine Transformation aussieht:
%Vor%Dies sollte sowohl den Mime-Typ für SVG hinzufügen, den Azure scheinbar nicht hat, und dann die Komprimierung aktivieren. Ich habe überprüft, dass die Mime-Typ-Zugabe gut funktioniert, aber nach der Veröffentlichung bekomme ich einen Fehler für die Komprimierungselemente:
Kein Element im Quelldokument stimmt überein '/configuration/system.webServer/httpCompression/staticTypes'
Das Entfernen der Komprimierung aus der Umwandlung und das direkte Hinzufügen zu meiner Datei web.config entfernt den Fehler, aber ich sehe die Komprimierung in den HTTP-Headern immer noch nicht. Hier sind die Antwortheader:
%Vor%So können Sie es in Ihrer web.config aktivieren:
%Vor%Die Schlüsselzeile ist das Entfernen des Catch-Alls (und späteres Hinzufügen). Wenn Sie das nicht haben, wird die SVG-Zeile grundsätzlich ignoriert, da der Catch-All von applicationhost.config geerbt wird und alle abfängt, bevor es die svg-Zeile erreicht.
Leider ist es nicht möglich, die integrierte http-Komprimierung für Azure-Websites für image/xml+svg
MIME-Typen zu verwenden. Sie müssen einige IIS-Einstellungen ändern, um das zu tun, was möglich ist, wenn Sie Azure-Webrollen verwenden.
Ich wollte diesen Ärger jedoch nicht durchmachen, also habe ich gerade einen Controller in MVC gemacht, um .svg-Dateien zu verarbeiten.
%Vor%Sie müssen dies auch zu Ihrer Datei Web.config hinzufügen, damit MVC Routen mit der Erweiterung .svg
verarbeitet %Vor%Ich habe die folgenden Konfigurationseinträge für eine Azure-Website:
%Vor%und
%Vor%Ich habe auch die Erweiterung .svgz hinzugefügt (für komprimierte Svg).
Die obige Lösung funktionierte für mich, aber ich musste zuerst die Dateierweiterung entfernen. Danach habe ich die Ergebnisse bekommen, nach denen ich gesucht habe.
%Vor%Tags und Links azure svg http-compression