{"id":933,"date":"2010-11-04T17:44:09","date_gmt":"2010-11-04T16:44:09","guid":{"rendered":"http:\/\/hjacob.com\/blog\/?p=933"},"modified":"2010-11-04T17:49:08","modified_gmt":"2010-11-04T16:49:08","slug":"apache-beschleunigen-mit-google","status":"publish","type":"post","link":"https:\/\/hjacob.com\/blog\/apache-beschleunigen-mit-google\/","title":{"rendered":"Apache beschleunigen mit Google"},"content":{"rendered":"<p>Google hat heute ein sehr interessantes Projekt ver\u00f6ffentlicht: <b><a href=\"http:\/\/code.google.com\/intl\/de-DE\/speed\/page-speed\/docs\/module.html\" rel=\"external\">mod_pagespeed<\/a><\/b> f\u00fcr den Webserver Apache. Mit diesem Plugin k\u00f6nnen Webmaster in Handumdrehen den Loadspeed ihrer Website verbessern &#8211; angeblich sogar halbieren. Auf der Demo-Website <a href=\"http:\/\/www.modpagespeed.com\/\" rel=\"external\">modpagespeed.com<\/a> kann man sich anschauen, was das Plugin im Einzelnen bietet und auch die Resultate daraus testen. Hier die \u00dcbersicht:<br \/>\n<!--more Weiterlesen --><\/p>\n<ul>\n<li>Messung der Lade- und Renderzeit mittels Javascript<br \/>(&#8222;<a href=\"http:\/\/code.google.com\/intl\/de-DE\/speed\/page-speed\/docs\/filter-instrumentation-add.html\" rel=\"external\">add_instrumentation<\/a>&#8222;)<\/li>\n<li>Automatische Verbesserung der Caching Header Einstellungen gem\u00e4\u00df <a href=\"http:\/\/code.google.com\/intl\/de-DE\/speed\/page-speed\/docs\/caching.html\" rel=\"external\">Best Practices<\/a> von Google <br \/>(&#8222;<a href=\"http:\/\/code.google.com\/intl\/de-DE\/speed\/page-speed\/docs\/filter-cache-extend.html\" rel=\"external\">extend_cache<\/a>&#8222;)<\/li>\n<li>Entfernung unn\u00f6tiger Leerzeichen um die Dateigr\u00f6\u00dfe zu reduzieren <br \/>(&#8222;<a href=\"http:\/\/code.google.com\/intl\/de-DE\/speed\/page-speed\/docs\/filter-whitespace-collapse.html\" rel=\"external\">collapse_whitespace<\/a>&#8222;)<\/li>\n<li>Verschmelzen von mehreren CSS Dateien zu einer einzigen Datei um die Anzahl der Requests zu verringern <br \/>(&#8222;<a href=\"http:\/\/code.google.com\/intl\/de-DE\/speed\/page-speed\/docs\/filter-css-combine.html\" rel=\"external\">combine_css<\/a>&#8222;)<\/li>\n<li>Generierung einer einzelnen HEAD Section, wenn der Code mehrere HEAD Tags aufweist (<i>Wer macht sowas?!<\/i>) <br \/>(&#8222;<a href=\"http:\/\/code.google.com\/intl\/de-DE\/speed\/page-speed\/docs\/filter-head-combine.html\" rel=\"external\">combine_heads<\/a>&#8222;)<\/li>\n<li>Verschiebung von Inline CSS und CSS Includes in den HEAD Bereich &#8211; was die Renderzeit verbessert <br \/>(&#8222;<a href=\"http:\/\/code.google.com\/intl\/de-DE\/speed\/page-speed\/docs\/filter-css-to-head.html\" rel=\"external\">move_css_to_head<\/a>&#8222;)\n<li>Entfernung von \u00fcberfl\u00fcssigen HTML Attributen <br \/>(&#8222;<a href=\"http:\/\/code.google.com\/intl\/de-DE\/speed\/page-speed\/docs\/filter-attribute-elide.html\" rel=\"external\">elide_attributes<\/a>&#8222;)<\/li>\n<li>Konvertierung von kleinen CSS Dateien in Inline CSS <br \/>(&#8222;<a href=\"http:\/\/code.google.com\/intl\/de-DE\/speed\/page-speed\/docs\/filter-css-inline.html\">inline_css<\/a>&#8222;)<\/li>\n<li>Konvertierung von kleinen Javascript Dateien in Inline Javascript <br \/>(&#8222;<a href=\"http:\/\/code.google.com\/intl\/de-DE\/speed\/page-speed\/docs\/filter-js-inline.html\" rel=\"external\">inline_javascript<\/a>&#8222;)<\/li>\n<li>Konvertierung von gr\u00f6\u00dferen Inline CSS Bl\u00f6cken in externe CSS Datei um diese clientseitig cachebar zu machen und so die Dateigr\u00f6\u00dfen zu verringern <br \/>(&#8222;<a href=\"http:\/\/code.google.com\/intl\/de-DE\/speed\/page-speed\/docs\/filter-css-outline.html\" rel=\"external\">outline_css<\/a>&#8222;)<\/li>\n<li>Konvertierung von gr\u00f6\u00dferen Inline Javascript Bl\u00f6cken in externe JS Datei um diese clientseitig cachebar zu machen und so die Dateigr\u00f6\u00dfen zu verringern<br \/>(&#8222;<a href=\"http:\/\/code.google.com\/intl\/de-DE\/speed\/page-speed\/docs\/filter-js-outline.html\" rel=\"external\">outline_javascript<\/a>&#8222;)<\/li>\n<li>Entfernung von unn\u00f6tigen Anf\u00fchrungszeichen <br \/>(&#8222;<a href=\"http:\/\/code.google.com\/intl\/de-DE\/speed\/page-speed\/docs\/filter-quote-remove.html\" rel=\"external\">remove_quotes<\/a>&#8222;)<\/li>\n<li>Entfernung von HTML Kommentaren <br \/>(&#8222;<a href=\"http:\/\/code.google.com\/intl\/de-DE\/speed\/page-speed\/docs\/filter-comment-remove.html\" rel=\"external\">remove_comments<\/a>&#8222;)<\/li>\n<li>CSS Minimierung (<i>Scheint nicht so effektiv wie der <a href=\"http:\/\/developer.yahoo.com\/yui\/compressor\/\" rel=\"external\">YUI Compressor<\/a> zu sein<\/i>) <br \/>(&#8222;<a href=\"http:\/\/code.google.com\/intl\/de-DE\/speed\/page-speed\/docs\/filter-css-rewrite.html\" rel=\"external\">rewrite_css<\/a>&#8222;)<\/li>\n<li>Optimierung von Bildern durch Verkleinerung, META-Daten Reduzierung und Re-Komprimierung (JPEG) <br \/>(&#8222;<a href=\"http:\/\/code.google.com\/intl\/de-DE\/speed\/page-speed\/docs\/filter-image-optimize.html\" rel=\"external\">rewrite_images<\/a>&#8222;)<\/li>\n<li>Javascript Minimierung<br \/>(&#8222;<a href=\"http:\/\/code.google.com\/intl\/de-DE\/speed\/page-speed\/docs\/filter-js-minify.html\" rel=\"external\">rewrite_javascript<\/a>&#8222;)<\/li>\n<\/ul>\n<p>All diese Features lassen sich via Konfigurationsdatei einzeln an- bzw. ausschalten. <\/p>\n<p>Einziger Wermutstropfen von mod_pagespeed ist die Vorraussetzung von <b>Apache 2<\/b> &#8211; was den Einsatz bei verschiedenen veralteten Hostern unm\u00f6glich macht. Allerdings ruft Google die Community auf, Portierungen und Erweiterungen zu entwickeln &#8211; vielleicht wird also schon bald auch mod_pagespeed f\u00fcr Apache 1.x verf\u00fcgbar sein.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Mit dem Apache 2 Modul mod_pagespeed ver\u00f6ffentlicht Google ein Webserver Plugin mit dem man Webseiten deutlich verschnellern kann.<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[115,36,3],"tags":[298,100,300,299,379,371,31],"_links":{"self":[{"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/posts\/933"}],"collection":[{"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/comments?post=933"}],"version-history":[{"count":6,"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/posts\/933\/revisions"}],"predecessor-version":[{"id":939,"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/posts\/933\/revisions\/939"}],"wp:attachment":[{"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/media?parent=933"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/categories?post=933"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hjacob.com\/blog\/wp-json\/wp\/v2\/tags?post=933"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}