HTML Minifizieren?

Thema wurde von sirtet, 21. November 2016 erstellt.

  1. sirtet
    sirtet Erfahrener Benutzer
    Registriert seit:
    4. Juli 2012
    Beiträge:
    1.131
    Danke erhalten:
    89
    Danke vergeben:
    90
    Hab grad gesehen, dass bei mir bsp. auf der Startseite doch recht viele HTML Kommentare drin sind...

    CSS und JS sind ja schon minifiziert, meine ich.

    Da hab ich gedacht, könnte man das nicht reduzieren?
    Auf die Schnelle gecheckt bei
    https://kangax.github.io/html-minifier/
    da bekomme ich immerhin 20% weg:
    Original size: 116,917. Minified size: 91,226. Savings: 25,691 (21.97%).

    Weiss nicht ob das Sinn machen würde?
    Sicherlich würde man sowas wie einen Debug-Modus haben wollen, um das Minifizieren abzuschalten...
    Oder gibt's schon einen Debug mode? SASS, das ja glaube ich das CSS macht, hat sowas schon, meine ich.
     
  2. Dennis (MotivMonster.de)
    Dennis (MotivMonster.de) G-WARD 2013/14/15/16
    Registriert seit:
    22. September 2011
    Beiträge:
    31.303
    Danke erhalten:
    6.268
    Danke vergeben:
    1.118
    Beruf:
    Mann für alles :)
    Ort:
    Weilburg
    Sinn schon aber der quellcode is dann unlesbar bei der Fehlersuche ist das dann extrem nervig.
     
  3. sirtet
    sirtet Erfahrener Benutzer
    Registriert seit:
    4. Juli 2012
    Beiträge:
    1.131
    Danke erhalten:
    89
    Danke vergeben:
    90
    darum ja die Option es auszuschalten... schreibst du wieder mal schneller als du liest? ;-)
     
  4. Anonymous
    Anonymous Erfahrener Benutzer
    Mitarbeiter
    Registriert seit:
    22. Juni 2011
    Beiträge:
    4.760
    Danke erhalten:
    1.749
    Danke vergeben:
    137
    Diese Ersparnis wirkt nur auf Basis des Datendurchsatzes, da der Request als solcher ja nicht wegfallen kann. Überlegen wir mal kurz: Ein nach aktuellem Maßstab eher schwacher Internetzugang transportiert locker 1.000.000 Bytes/s, bei einer Verkürzung des Datenvolumens um 25.691 Bytes verkürzt sich die Datenübertragung also um ungefähr 25 ms. Das ist praktisch nicht spürbar; da gäbe es sicher andere Maßnahmen, die mit weit weniger Aufwand viel mehr erreichen, was die wahrnehmbare Ladezeit angeht.
     
  5. sirtet
    sirtet Erfahrener Benutzer
    Registriert seit:
    4. Juli 2012
    Beiträge:
    1.131
    Danke erhalten:
    89
    Danke vergeben:
    90
    Kann auch dagegen argumentieren: ;-)
    Naja, hoffentlich hat man noch GZip übertragung an, dann ist's nochmal nur 1/4 davon in der Übertragung...

    Wegen verfügbarer Bandbreite:
    https://de.statista.com/infografik/1064/top-10-laender-mit-dem-schnellsten-internetzugang/
    DE mit 14Mbit im Schnitt, heisst ca. das 1Mbyte das du angibst, im Schnitt... Aber wie sieht denn die Verteilung nach unten aus? Keine Ahnung, ehrlich gesagt. Ausser, dass ich selbst Mobil immer wieder mal nur mit Edge unterwegs bin...
    Ergoogeln konnte ich da überraschenderweise garnichts erhellendes, immer nur Schnitt und ev. Verfügbarkeit, aber nicht was Webserver von Usern wirklich sehen...

    Arbeit für Webserver, Parser im Browser, wird wohl alles vernachlässigbar klein sein? 20% weniger Quelltextlänge?
    CSS wird ja auch eingedampft. Ok, sind grössere Dateien. Werden aber nur 1x übertragen. Html jedoch bei jeder Seite neu.

    Hier
    http://stackoverflow.com/questions/1306792/why-people-minify-assets-and-not-the-html
    wird kontrovers drüber diskutiert... 1. Antwort dagegen, 2. dafür... Ob's auch Einfluss auf Last von Client hat, sehe ich nirgends. Für Server wird wenn eher von Zusatzlast für's minifizieren geredet...
    Es heisst auch einmal pippifax einfach, einmal schwiiierig... hätte den Aufwand eher recht einfach erwartet, ev. in den Cache-Aufbau integriert, oder sowas. Scheint, Smarty hat auch Funktionen in die Richtung... Naja, nur Ideen eines unqualifizierten...
     
  6. Torben Wark
    Torben Wark Gambio GmbH
    Registriert seit:
    15. Juli 2014
    Beiträge:
    2.581
    Danke erhalten:
    1.178
    Danke vergeben:
    399
    Wir hatten das tatsächlich schonmal kurz in einem unserer Entwicklungszweige versucht zu integrieren. Wirklich umgesetzt haben wir es unter anderem nicht, weil es quasi unwartbaren undurchsichtigen HTML-Code produziert, den keiner lesen kann oder will. Das macht dann folgenden Punkt durchaus kritisch: Jeder Shopbetreiber und Modulentwickler hat die Möglichkeit das HTML zu modifizieren. Sollte es dann dort einen Fehler geben, sind dann nicht nur kleinere Stellen davon betroffen, weil der Browser den Rest des HTML doch noch interpretiert bekommt, sondern die gesamte Seite dürfte dann nicht mehr richtig dargestellt werden und es ist quasi unmöglich, die richtige Stelle im Quellcode zu finden, weil dieser nicht mehr lesbar ist.

    Und invalides HTML ist schnell produziert: Kopiert ein Shopbetreiber Text aus z.B. einem Worddokument, kopiert er auch die XML-Knoten mit, die Word zum Formatieren von Dokumenten verwendet, dann sorgt das auch jetzt schon für unschöne Nebeneffekte, weil ein Browser mit diesen Angaben nicht wirklich etwas anfangen kann und dann entsprechend Kauderwelsch produziert. Bei komprimeritem HTML wäre die Katastrophe perfekt, die Seite dürfte hier dann komplett zerschossen aussehen und man muss nun ewig suchen, an welcher Stelle denn nun der Fehler sitzt. Aus den Gründen haben wir uns dann entschlossen, das nicht einzubauen.
     
  7. sirtet
    sirtet Erfahrener Benutzer
    Registriert seit:
    4. Juli 2012
    Beiträge:
    1.131
    Danke erhalten:
    89
    Danke vergeben:
    90
    Danke Thorben...
    Aber das Minifizieren abschaltbar zu machen wäre ja kein grosses Problem gewesen, oder?
    Gibt's nicht für das CSS auch einen dev. mode?

    Naja, ihr habt's jedenfalls bedacht und verworfen, würde sagen, der Thread ist beantwortet...
     
  8. Dennis (MotivMonster.de)
    Dennis (MotivMonster.de) G-WARD 2013/14/15/16
    Registriert seit:
    22. September 2011
    Beiträge:
    31.303
    Danke erhalten:
    6.268
    Danke vergeben:
    1.118
    Beruf:
    Mann für alles :)
    Ort:
    Weilburg
    Das ist ja was Thorben meinte - Ausgeschaltet hast evtl. keinen direkt erkennbaren Fehler, eingeschaltet wirkt es sich aber so stark aus das die ganze Seite zerschossen ist.
    Selbst dann wird die Fehlersuche schwer weil nicht genau weißt wo du suchen sollst.
     
  9. sirtet
    sirtet Erfahrener Benutzer
    Registriert seit:
    4. Juli 2012
    Beiträge:
    1.131
    Danke erhalten:
    89
    Danke vergeben:
    90
    Hä??? Sagt er wo genau?
    Minifizieren hat keinen Einfluss auf die Funktion. Ausser es wäre ein Bug drin in der Minifizierfunktion.
     
  10. Dennis (MotivMonster.de)
    Dennis (MotivMonster.de) G-WARD 2013/14/15/16
    Registriert seit:
    22. September 2011
    Beiträge:
    31.303
    Danke erhalten:
    6.268
    Danke vergeben:
    1.118
    Beruf:
    Mann für alles :)
    Ort:
    Weilburg
    Da sagt er das
     
  11. Torben Wark
    Torben Wark Gambio GmbH
    Registriert seit:
    15. Juli 2014
    Beiträge:
    2.581
    Danke erhalten:
    1.178
    Danke vergeben:
    399
    Doch genau das kann es haben. Manche Sachen bekommt der Browser von sich aus repariert, wenn das ganze nicht minifiziert ist. Das sieht dann heile aus, obwohl es kaputt ist. Wenn das ganze dann minifiziert und in einer Zeile zusammengedrängt steht, kann es dazu kommen, dass der Browser das nicht mehr gebacken bekommt und beim Versuch das zu reparieren, noch mehr Kauderwelch produziert, als eigentlich schon da steht, was dann in einer komplett kaputten Seite resultiert.
     
  12. sirtet
    sirtet Erfahrener Benutzer
    Registriert seit:
    4. Juli 2012
    Beiträge:
    1.131
    Danke erhalten:
    89
    Danke vergeben:
    90
    Hmm, ah, verstehe...
    Wie lange ist denn diese Evaluation her?
    Tönt nach alten Browsern irgendwie... oder sind's die neuen, die versuchen die alten zu verstehen?
    Kann auch grad nichts zu minifyer-problemen ergoogeln.

    Wegen validem Content, ist da nicht vom CKEditor das ACF aktiv?
     
  13. Torben Wark
    Torben Wark Gambio GmbH
    Registriert seit:
    15. Juli 2014
    Beiträge:
    2.581
    Danke erhalten:
    1.178
    Danke vergeben:
    399
    Ist maximal nen Jahr her. Das Problem haben alle Browser, egal ob alt oder neu. Es geht hier auch nicht primär um den Content, den Shopbetreiber einfügen können, sondern einfach um die recht zahlreichen Möglichkeiten, invalides HTML zu produzieren, die uns dazu bewegt hat, das Minifizieren nicht fest zu implementieren.

    Das Problem ist auch nicht das Minifizieren an sich, sondern dass dadurch Probleme durch invaliden Code eher verschlimmert werden und man dann immer länger suchen muss, um den eigentliche Fehler überhaupt zu finden. Wir können einfach nicht garantieren, dass eine HTML-Minifizierung in allen Shops gleich gut funktioniert, weshalb wir es halt nicht in den Standard aufgenommen haben.
     
  14. Dennis (MotivMonster.de)
    Dennis (MotivMonster.de) G-WARD 2013/14/15/16
    Registriert seit:
    22. September 2011
    Beiträge:
    31.303
    Danke erhalten:
    6.268
    Danke vergeben:
    1.118
    Beruf:
    Mann für alles :)
    Ort:
    Weilburg
    Dann als Zusatz Option beim Cache eistellungen / Gzip Einstellungen - FÜr Leute auf eigenes Risiko zum aktivieren.
     
  15. Wilken (Gambio)
    Wilken (Gambio) Erfahrener Benutzer
    Registriert seit:
    7. November 2012
    Beiträge:
    18.737
    Danke erhalten:
    7.311
    Danke vergeben:
    2.208
    Ich breche das nochmal anders herunter:

    Der durch eine HTML Minifizierung erreichbare Gesamtgewinn ist, auch bei Außerachtlassung aller Probleme die man dadurch auslösen könnte, so minimal, dass es momentan zu keinen grossen Turnübungen Anlass gibt. Wir haben noch Optimierungspotenziale auf der Liste, die bei Ihrer Behandlung mit der selben Menge von Entwicklerressourcen geschätzt deutlich grössere Fortschritte bringen dürften, darum werden wir uns erstmal da austoben und das Thema HTML Minifizierung mindestens noch eine Weile liegen lassen.