migliorare le performance frontend con typo3

15
T3Camp Italia L’evento italiano dedicato a TYPO3 Migliorare le performance Front-End David Denicolò - InteRa srl Migliorare le performance Front- End con TYPO3 David Denicolò <[email protected]> T3Camp Italia L’evento italiano dedicato a TYPO3 Bologna 28/29 Ottobre 2011

Upload: david-denicolo

Post on 05-Dec-2014

931 views

Category:

Documents


3 download

DESCRIPTION

Tecniche e suggerimenti per migliorare le performance Front End di siti realizzati con TYPO3.Presentato al T3Camp Italia 2011 da David Denicolò

TRANSCRIPT

Page 1: Migliorare le performance Frontend con TYPO3

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Migliorare le performance Front-End con TYPO3

David Denicolograve ltdavidinteraitgt

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Bologna 2829 Ottobre 2011

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

About me

David DenicolograveCTO InteRa

TYPO3 dal 2002

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Le performance di un sito web sono uno degli aspetti cruciali

raggiungere le migliori prestazioni porta un vantaggio per gli utenti e benefici per i motori di ricerca

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Il tempo di caricamento delle pagine egrave un elemento che condiziona il ranking

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Da cosa egrave condizionato il tempo di caricamento

bull dalla risposta del server

bull dalle performance di TYPO3

bull dalla dimensione della pagina

bull dal numero di richieste HTTP

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Tecnicariduce

richieste HTTPdiminuiscedimensionidiminuiscedimensioni

CSS3 ombre gradienti angoli V VVCSS Sprite V ==Font-face V X =Distribuzione su piugrave server V ==Merge V ==Minify = VVCompress = VVSource Optimization = VV

Tecniche di ottimizzazione FE

TYPO3

TEMPLATE

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Distribuzione o parallelizzazione

La distribuzione egrave una tecnica mista in cui lo sviluppatore puograve disporre alcune risorse su altro server

Lrsquoestensione ldquoT3 jQueryrdquo permette caricare librerie JavaScript jQuery direttamente da un CDN ad esempio Google MSN o jquerytoolscom

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

merge minify compress

le tecniche di Merge Minify Compress su CSS e JS possono essere realizzate tramite lrsquoestensione di TYPO3

bull ldquoCSSJavascript Minificator Compressorrdquo

bull extkey scriptmerger

bull occorre configurare htaccess

plugintx_scriptmerger css enable = 1 addContentInDocument = 0

minification minify enable = 1 ignore = min

gzip compression compress enable = 1 ignore = gz

merging merge enable = 1 ignore = charset uniqueCharset enable = 1 value = charset UTF-8

plugintx_scriptmerger javascript enable = 1 parseBody = 0 addBeforeBody = 0 doNotRemoveInDocInBody = 1 addContentInDocument = 0

minification minify enable = 1 useJSMinPlus = 1 ignore = min

gzip compression compress enable = 1 ignore = gz

merging merge enable = 1 ignore = externalFileCacheLifetime = 3600

Esempio di TypoScript di scriptmerger

BEGIN EXTscriptmerger

Removal of ETag (saves some bytes the last modified header is still there)FileETag MTime SizeltIfModule mod_headerscgt FileETag noneltIfModulegt

Client caching of JSCSS files (because they are merged with an applied hash) Note Unsetting of the last modified header causes a permant 200 Ok statusltFilesMatch (merge|min|gz)(gz)(js|css)gt ltIfModule mod_expirescgt ExpiresActive on ExpiresDefault access plus 1 year ltIfModulegt

ltIfModule mod_headerscgt Header append Cache-Control public ltIfModulegtltFilesMatchgt

deliver the uncompressed file if gzip encoding isnt acceptedAddEncoding x-gzip gzRewriteCond HTTPaccept-encoding gzip [NC]RewriteRule ^typo3tempscriptmergercompressed(+)gz(js|css) typo3tempscriptmergeruncompressed$1$2 [LNC]

END EXTscriptmerger

Esempio di htaccess di scriptmerger

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

source optimization

la tecnica di source optimization puograve essere realizzata tramite lrsquoestensione di TYPO3

bull ldquoSourceOptimizationrdquo

bull extkey sourceopt

CONSTANTS

sourceopt enabled = 1 enable_utf-8_support = 1 removeGenerator = 0 removeBlurScript = 1 removeComments = 1 removeCommentskeep10 = This website is powered by TYPO3usi removeCommentskeep20 = ^[ifusi formatHtml = 1 formatHtmltabSize = 1 formatHtmldebugComment = 1

Esempio di TypoScript di sourceopt

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Buone pratiche

CSS su file non inline nel body

JS in header o footer non nel body

verificare CSS e JS delle estensioni

Redirect in htacces non in realurl

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

strumenti di verifica

Page speed

bull httpsdevelopersgooglecompagespeed

Tools Pingdom

bull httpfptpingdomcom

Strumenti per webmaster di Google

bull httpswwwgooglecomwebmasterstools

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

TYPO3 CaretakerDavid Denicolograve - InteRa srl

Grazie per lrsquoattenzione

bull wwwinterait

bull twitter davdenic

bull davdenictumblrcom

Page 2: Migliorare le performance Frontend con TYPO3

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

About me

David DenicolograveCTO InteRa

TYPO3 dal 2002

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Le performance di un sito web sono uno degli aspetti cruciali

raggiungere le migliori prestazioni porta un vantaggio per gli utenti e benefici per i motori di ricerca

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Il tempo di caricamento delle pagine egrave un elemento che condiziona il ranking

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Da cosa egrave condizionato il tempo di caricamento

bull dalla risposta del server

bull dalle performance di TYPO3

bull dalla dimensione della pagina

bull dal numero di richieste HTTP

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Tecnicariduce

richieste HTTPdiminuiscedimensionidiminuiscedimensioni

CSS3 ombre gradienti angoli V VVCSS Sprite V ==Font-face V X =Distribuzione su piugrave server V ==Merge V ==Minify = VVCompress = VVSource Optimization = VV

Tecniche di ottimizzazione FE

TYPO3

TEMPLATE

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Distribuzione o parallelizzazione

La distribuzione egrave una tecnica mista in cui lo sviluppatore puograve disporre alcune risorse su altro server

Lrsquoestensione ldquoT3 jQueryrdquo permette caricare librerie JavaScript jQuery direttamente da un CDN ad esempio Google MSN o jquerytoolscom

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

merge minify compress

le tecniche di Merge Minify Compress su CSS e JS possono essere realizzate tramite lrsquoestensione di TYPO3

bull ldquoCSSJavascript Minificator Compressorrdquo

bull extkey scriptmerger

bull occorre configurare htaccess

plugintx_scriptmerger css enable = 1 addContentInDocument = 0

minification minify enable = 1 ignore = min

gzip compression compress enable = 1 ignore = gz

merging merge enable = 1 ignore = charset uniqueCharset enable = 1 value = charset UTF-8

plugintx_scriptmerger javascript enable = 1 parseBody = 0 addBeforeBody = 0 doNotRemoveInDocInBody = 1 addContentInDocument = 0

minification minify enable = 1 useJSMinPlus = 1 ignore = min

gzip compression compress enable = 1 ignore = gz

merging merge enable = 1 ignore = externalFileCacheLifetime = 3600

Esempio di TypoScript di scriptmerger

BEGIN EXTscriptmerger

Removal of ETag (saves some bytes the last modified header is still there)FileETag MTime SizeltIfModule mod_headerscgt FileETag noneltIfModulegt

Client caching of JSCSS files (because they are merged with an applied hash) Note Unsetting of the last modified header causes a permant 200 Ok statusltFilesMatch (merge|min|gz)(gz)(js|css)gt ltIfModule mod_expirescgt ExpiresActive on ExpiresDefault access plus 1 year ltIfModulegt

ltIfModule mod_headerscgt Header append Cache-Control public ltIfModulegtltFilesMatchgt

deliver the uncompressed file if gzip encoding isnt acceptedAddEncoding x-gzip gzRewriteCond HTTPaccept-encoding gzip [NC]RewriteRule ^typo3tempscriptmergercompressed(+)gz(js|css) typo3tempscriptmergeruncompressed$1$2 [LNC]

END EXTscriptmerger

Esempio di htaccess di scriptmerger

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

source optimization

la tecnica di source optimization puograve essere realizzata tramite lrsquoestensione di TYPO3

bull ldquoSourceOptimizationrdquo

bull extkey sourceopt

CONSTANTS

sourceopt enabled = 1 enable_utf-8_support = 1 removeGenerator = 0 removeBlurScript = 1 removeComments = 1 removeCommentskeep10 = This website is powered by TYPO3usi removeCommentskeep20 = ^[ifusi formatHtml = 1 formatHtmltabSize = 1 formatHtmldebugComment = 1

Esempio di TypoScript di sourceopt

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Buone pratiche

CSS su file non inline nel body

JS in header o footer non nel body

verificare CSS e JS delle estensioni

Redirect in htacces non in realurl

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

strumenti di verifica

Page speed

bull httpsdevelopersgooglecompagespeed

Tools Pingdom

bull httpfptpingdomcom

Strumenti per webmaster di Google

bull httpswwwgooglecomwebmasterstools

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

TYPO3 CaretakerDavid Denicolograve - InteRa srl

Grazie per lrsquoattenzione

bull wwwinterait

bull twitter davdenic

bull davdenictumblrcom

Page 3: Migliorare le performance Frontend con TYPO3

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Le performance di un sito web sono uno degli aspetti cruciali

raggiungere le migliori prestazioni porta un vantaggio per gli utenti e benefici per i motori di ricerca

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Il tempo di caricamento delle pagine egrave un elemento che condiziona il ranking

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Da cosa egrave condizionato il tempo di caricamento

bull dalla risposta del server

bull dalle performance di TYPO3

bull dalla dimensione della pagina

bull dal numero di richieste HTTP

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Tecnicariduce

richieste HTTPdiminuiscedimensionidiminuiscedimensioni

CSS3 ombre gradienti angoli V VVCSS Sprite V ==Font-face V X =Distribuzione su piugrave server V ==Merge V ==Minify = VVCompress = VVSource Optimization = VV

Tecniche di ottimizzazione FE

TYPO3

TEMPLATE

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Distribuzione o parallelizzazione

La distribuzione egrave una tecnica mista in cui lo sviluppatore puograve disporre alcune risorse su altro server

Lrsquoestensione ldquoT3 jQueryrdquo permette caricare librerie JavaScript jQuery direttamente da un CDN ad esempio Google MSN o jquerytoolscom

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

merge minify compress

le tecniche di Merge Minify Compress su CSS e JS possono essere realizzate tramite lrsquoestensione di TYPO3

bull ldquoCSSJavascript Minificator Compressorrdquo

bull extkey scriptmerger

bull occorre configurare htaccess

plugintx_scriptmerger css enable = 1 addContentInDocument = 0

minification minify enable = 1 ignore = min

gzip compression compress enable = 1 ignore = gz

merging merge enable = 1 ignore = charset uniqueCharset enable = 1 value = charset UTF-8

plugintx_scriptmerger javascript enable = 1 parseBody = 0 addBeforeBody = 0 doNotRemoveInDocInBody = 1 addContentInDocument = 0

minification minify enable = 1 useJSMinPlus = 1 ignore = min

gzip compression compress enable = 1 ignore = gz

merging merge enable = 1 ignore = externalFileCacheLifetime = 3600

Esempio di TypoScript di scriptmerger

BEGIN EXTscriptmerger

Removal of ETag (saves some bytes the last modified header is still there)FileETag MTime SizeltIfModule mod_headerscgt FileETag noneltIfModulegt

Client caching of JSCSS files (because they are merged with an applied hash) Note Unsetting of the last modified header causes a permant 200 Ok statusltFilesMatch (merge|min|gz)(gz)(js|css)gt ltIfModule mod_expirescgt ExpiresActive on ExpiresDefault access plus 1 year ltIfModulegt

ltIfModule mod_headerscgt Header append Cache-Control public ltIfModulegtltFilesMatchgt

deliver the uncompressed file if gzip encoding isnt acceptedAddEncoding x-gzip gzRewriteCond HTTPaccept-encoding gzip [NC]RewriteRule ^typo3tempscriptmergercompressed(+)gz(js|css) typo3tempscriptmergeruncompressed$1$2 [LNC]

END EXTscriptmerger

Esempio di htaccess di scriptmerger

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

source optimization

la tecnica di source optimization puograve essere realizzata tramite lrsquoestensione di TYPO3

bull ldquoSourceOptimizationrdquo

bull extkey sourceopt

CONSTANTS

sourceopt enabled = 1 enable_utf-8_support = 1 removeGenerator = 0 removeBlurScript = 1 removeComments = 1 removeCommentskeep10 = This website is powered by TYPO3usi removeCommentskeep20 = ^[ifusi formatHtml = 1 formatHtmltabSize = 1 formatHtmldebugComment = 1

Esempio di TypoScript di sourceopt

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Buone pratiche

CSS su file non inline nel body

JS in header o footer non nel body

verificare CSS e JS delle estensioni

Redirect in htacces non in realurl

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

strumenti di verifica

Page speed

bull httpsdevelopersgooglecompagespeed

Tools Pingdom

bull httpfptpingdomcom

Strumenti per webmaster di Google

bull httpswwwgooglecomwebmasterstools

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

TYPO3 CaretakerDavid Denicolograve - InteRa srl

Grazie per lrsquoattenzione

bull wwwinterait

bull twitter davdenic

bull davdenictumblrcom

Page 4: Migliorare le performance Frontend con TYPO3

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Il tempo di caricamento delle pagine egrave un elemento che condiziona il ranking

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Da cosa egrave condizionato il tempo di caricamento

bull dalla risposta del server

bull dalle performance di TYPO3

bull dalla dimensione della pagina

bull dal numero di richieste HTTP

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Tecnicariduce

richieste HTTPdiminuiscedimensionidiminuiscedimensioni

CSS3 ombre gradienti angoli V VVCSS Sprite V ==Font-face V X =Distribuzione su piugrave server V ==Merge V ==Minify = VVCompress = VVSource Optimization = VV

Tecniche di ottimizzazione FE

TYPO3

TEMPLATE

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Distribuzione o parallelizzazione

La distribuzione egrave una tecnica mista in cui lo sviluppatore puograve disporre alcune risorse su altro server

Lrsquoestensione ldquoT3 jQueryrdquo permette caricare librerie JavaScript jQuery direttamente da un CDN ad esempio Google MSN o jquerytoolscom

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

merge minify compress

le tecniche di Merge Minify Compress su CSS e JS possono essere realizzate tramite lrsquoestensione di TYPO3

bull ldquoCSSJavascript Minificator Compressorrdquo

bull extkey scriptmerger

bull occorre configurare htaccess

plugintx_scriptmerger css enable = 1 addContentInDocument = 0

minification minify enable = 1 ignore = min

gzip compression compress enable = 1 ignore = gz

merging merge enable = 1 ignore = charset uniqueCharset enable = 1 value = charset UTF-8

plugintx_scriptmerger javascript enable = 1 parseBody = 0 addBeforeBody = 0 doNotRemoveInDocInBody = 1 addContentInDocument = 0

minification minify enable = 1 useJSMinPlus = 1 ignore = min

gzip compression compress enable = 1 ignore = gz

merging merge enable = 1 ignore = externalFileCacheLifetime = 3600

Esempio di TypoScript di scriptmerger

BEGIN EXTscriptmerger

Removal of ETag (saves some bytes the last modified header is still there)FileETag MTime SizeltIfModule mod_headerscgt FileETag noneltIfModulegt

Client caching of JSCSS files (because they are merged with an applied hash) Note Unsetting of the last modified header causes a permant 200 Ok statusltFilesMatch (merge|min|gz)(gz)(js|css)gt ltIfModule mod_expirescgt ExpiresActive on ExpiresDefault access plus 1 year ltIfModulegt

ltIfModule mod_headerscgt Header append Cache-Control public ltIfModulegtltFilesMatchgt

deliver the uncompressed file if gzip encoding isnt acceptedAddEncoding x-gzip gzRewriteCond HTTPaccept-encoding gzip [NC]RewriteRule ^typo3tempscriptmergercompressed(+)gz(js|css) typo3tempscriptmergeruncompressed$1$2 [LNC]

END EXTscriptmerger

Esempio di htaccess di scriptmerger

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

source optimization

la tecnica di source optimization puograve essere realizzata tramite lrsquoestensione di TYPO3

bull ldquoSourceOptimizationrdquo

bull extkey sourceopt

CONSTANTS

sourceopt enabled = 1 enable_utf-8_support = 1 removeGenerator = 0 removeBlurScript = 1 removeComments = 1 removeCommentskeep10 = This website is powered by TYPO3usi removeCommentskeep20 = ^[ifusi formatHtml = 1 formatHtmltabSize = 1 formatHtmldebugComment = 1

Esempio di TypoScript di sourceopt

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Buone pratiche

CSS su file non inline nel body

JS in header o footer non nel body

verificare CSS e JS delle estensioni

Redirect in htacces non in realurl

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

strumenti di verifica

Page speed

bull httpsdevelopersgooglecompagespeed

Tools Pingdom

bull httpfptpingdomcom

Strumenti per webmaster di Google

bull httpswwwgooglecomwebmasterstools

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

TYPO3 CaretakerDavid Denicolograve - InteRa srl

Grazie per lrsquoattenzione

bull wwwinterait

bull twitter davdenic

bull davdenictumblrcom

Page 5: Migliorare le performance Frontend con TYPO3

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Da cosa egrave condizionato il tempo di caricamento

bull dalla risposta del server

bull dalle performance di TYPO3

bull dalla dimensione della pagina

bull dal numero di richieste HTTP

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Tecnicariduce

richieste HTTPdiminuiscedimensionidiminuiscedimensioni

CSS3 ombre gradienti angoli V VVCSS Sprite V ==Font-face V X =Distribuzione su piugrave server V ==Merge V ==Minify = VVCompress = VVSource Optimization = VV

Tecniche di ottimizzazione FE

TYPO3

TEMPLATE

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Distribuzione o parallelizzazione

La distribuzione egrave una tecnica mista in cui lo sviluppatore puograve disporre alcune risorse su altro server

Lrsquoestensione ldquoT3 jQueryrdquo permette caricare librerie JavaScript jQuery direttamente da un CDN ad esempio Google MSN o jquerytoolscom

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

merge minify compress

le tecniche di Merge Minify Compress su CSS e JS possono essere realizzate tramite lrsquoestensione di TYPO3

bull ldquoCSSJavascript Minificator Compressorrdquo

bull extkey scriptmerger

bull occorre configurare htaccess

plugintx_scriptmerger css enable = 1 addContentInDocument = 0

minification minify enable = 1 ignore = min

gzip compression compress enable = 1 ignore = gz

merging merge enable = 1 ignore = charset uniqueCharset enable = 1 value = charset UTF-8

plugintx_scriptmerger javascript enable = 1 parseBody = 0 addBeforeBody = 0 doNotRemoveInDocInBody = 1 addContentInDocument = 0

minification minify enable = 1 useJSMinPlus = 1 ignore = min

gzip compression compress enable = 1 ignore = gz

merging merge enable = 1 ignore = externalFileCacheLifetime = 3600

Esempio di TypoScript di scriptmerger

BEGIN EXTscriptmerger

Removal of ETag (saves some bytes the last modified header is still there)FileETag MTime SizeltIfModule mod_headerscgt FileETag noneltIfModulegt

Client caching of JSCSS files (because they are merged with an applied hash) Note Unsetting of the last modified header causes a permant 200 Ok statusltFilesMatch (merge|min|gz)(gz)(js|css)gt ltIfModule mod_expirescgt ExpiresActive on ExpiresDefault access plus 1 year ltIfModulegt

ltIfModule mod_headerscgt Header append Cache-Control public ltIfModulegtltFilesMatchgt

deliver the uncompressed file if gzip encoding isnt acceptedAddEncoding x-gzip gzRewriteCond HTTPaccept-encoding gzip [NC]RewriteRule ^typo3tempscriptmergercompressed(+)gz(js|css) typo3tempscriptmergeruncompressed$1$2 [LNC]

END EXTscriptmerger

Esempio di htaccess di scriptmerger

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

source optimization

la tecnica di source optimization puograve essere realizzata tramite lrsquoestensione di TYPO3

bull ldquoSourceOptimizationrdquo

bull extkey sourceopt

CONSTANTS

sourceopt enabled = 1 enable_utf-8_support = 1 removeGenerator = 0 removeBlurScript = 1 removeComments = 1 removeCommentskeep10 = This website is powered by TYPO3usi removeCommentskeep20 = ^[ifusi formatHtml = 1 formatHtmltabSize = 1 formatHtmldebugComment = 1

Esempio di TypoScript di sourceopt

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Buone pratiche

CSS su file non inline nel body

JS in header o footer non nel body

verificare CSS e JS delle estensioni

Redirect in htacces non in realurl

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

strumenti di verifica

Page speed

bull httpsdevelopersgooglecompagespeed

Tools Pingdom

bull httpfptpingdomcom

Strumenti per webmaster di Google

bull httpswwwgooglecomwebmasterstools

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

TYPO3 CaretakerDavid Denicolograve - InteRa srl

Grazie per lrsquoattenzione

bull wwwinterait

bull twitter davdenic

bull davdenictumblrcom

Page 6: Migliorare le performance Frontend con TYPO3

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Tecnicariduce

richieste HTTPdiminuiscedimensionidiminuiscedimensioni

CSS3 ombre gradienti angoli V VVCSS Sprite V ==Font-face V X =Distribuzione su piugrave server V ==Merge V ==Minify = VVCompress = VVSource Optimization = VV

Tecniche di ottimizzazione FE

TYPO3

TEMPLATE

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Distribuzione o parallelizzazione

La distribuzione egrave una tecnica mista in cui lo sviluppatore puograve disporre alcune risorse su altro server

Lrsquoestensione ldquoT3 jQueryrdquo permette caricare librerie JavaScript jQuery direttamente da un CDN ad esempio Google MSN o jquerytoolscom

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

merge minify compress

le tecniche di Merge Minify Compress su CSS e JS possono essere realizzate tramite lrsquoestensione di TYPO3

bull ldquoCSSJavascript Minificator Compressorrdquo

bull extkey scriptmerger

bull occorre configurare htaccess

plugintx_scriptmerger css enable = 1 addContentInDocument = 0

minification minify enable = 1 ignore = min

gzip compression compress enable = 1 ignore = gz

merging merge enable = 1 ignore = charset uniqueCharset enable = 1 value = charset UTF-8

plugintx_scriptmerger javascript enable = 1 parseBody = 0 addBeforeBody = 0 doNotRemoveInDocInBody = 1 addContentInDocument = 0

minification minify enable = 1 useJSMinPlus = 1 ignore = min

gzip compression compress enable = 1 ignore = gz

merging merge enable = 1 ignore = externalFileCacheLifetime = 3600

Esempio di TypoScript di scriptmerger

BEGIN EXTscriptmerger

Removal of ETag (saves some bytes the last modified header is still there)FileETag MTime SizeltIfModule mod_headerscgt FileETag noneltIfModulegt

Client caching of JSCSS files (because they are merged with an applied hash) Note Unsetting of the last modified header causes a permant 200 Ok statusltFilesMatch (merge|min|gz)(gz)(js|css)gt ltIfModule mod_expirescgt ExpiresActive on ExpiresDefault access plus 1 year ltIfModulegt

ltIfModule mod_headerscgt Header append Cache-Control public ltIfModulegtltFilesMatchgt

deliver the uncompressed file if gzip encoding isnt acceptedAddEncoding x-gzip gzRewriteCond HTTPaccept-encoding gzip [NC]RewriteRule ^typo3tempscriptmergercompressed(+)gz(js|css) typo3tempscriptmergeruncompressed$1$2 [LNC]

END EXTscriptmerger

Esempio di htaccess di scriptmerger

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

source optimization

la tecnica di source optimization puograve essere realizzata tramite lrsquoestensione di TYPO3

bull ldquoSourceOptimizationrdquo

bull extkey sourceopt

CONSTANTS

sourceopt enabled = 1 enable_utf-8_support = 1 removeGenerator = 0 removeBlurScript = 1 removeComments = 1 removeCommentskeep10 = This website is powered by TYPO3usi removeCommentskeep20 = ^[ifusi formatHtml = 1 formatHtmltabSize = 1 formatHtmldebugComment = 1

Esempio di TypoScript di sourceopt

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Buone pratiche

CSS su file non inline nel body

JS in header o footer non nel body

verificare CSS e JS delle estensioni

Redirect in htacces non in realurl

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

strumenti di verifica

Page speed

bull httpsdevelopersgooglecompagespeed

Tools Pingdom

bull httpfptpingdomcom

Strumenti per webmaster di Google

bull httpswwwgooglecomwebmasterstools

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

TYPO3 CaretakerDavid Denicolograve - InteRa srl

Grazie per lrsquoattenzione

bull wwwinterait

bull twitter davdenic

bull davdenictumblrcom

Page 7: Migliorare le performance Frontend con TYPO3

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Distribuzione o parallelizzazione

La distribuzione egrave una tecnica mista in cui lo sviluppatore puograve disporre alcune risorse su altro server

Lrsquoestensione ldquoT3 jQueryrdquo permette caricare librerie JavaScript jQuery direttamente da un CDN ad esempio Google MSN o jquerytoolscom

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

merge minify compress

le tecniche di Merge Minify Compress su CSS e JS possono essere realizzate tramite lrsquoestensione di TYPO3

bull ldquoCSSJavascript Minificator Compressorrdquo

bull extkey scriptmerger

bull occorre configurare htaccess

plugintx_scriptmerger css enable = 1 addContentInDocument = 0

minification minify enable = 1 ignore = min

gzip compression compress enable = 1 ignore = gz

merging merge enable = 1 ignore = charset uniqueCharset enable = 1 value = charset UTF-8

plugintx_scriptmerger javascript enable = 1 parseBody = 0 addBeforeBody = 0 doNotRemoveInDocInBody = 1 addContentInDocument = 0

minification minify enable = 1 useJSMinPlus = 1 ignore = min

gzip compression compress enable = 1 ignore = gz

merging merge enable = 1 ignore = externalFileCacheLifetime = 3600

Esempio di TypoScript di scriptmerger

BEGIN EXTscriptmerger

Removal of ETag (saves some bytes the last modified header is still there)FileETag MTime SizeltIfModule mod_headerscgt FileETag noneltIfModulegt

Client caching of JSCSS files (because they are merged with an applied hash) Note Unsetting of the last modified header causes a permant 200 Ok statusltFilesMatch (merge|min|gz)(gz)(js|css)gt ltIfModule mod_expirescgt ExpiresActive on ExpiresDefault access plus 1 year ltIfModulegt

ltIfModule mod_headerscgt Header append Cache-Control public ltIfModulegtltFilesMatchgt

deliver the uncompressed file if gzip encoding isnt acceptedAddEncoding x-gzip gzRewriteCond HTTPaccept-encoding gzip [NC]RewriteRule ^typo3tempscriptmergercompressed(+)gz(js|css) typo3tempscriptmergeruncompressed$1$2 [LNC]

END EXTscriptmerger

Esempio di htaccess di scriptmerger

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

source optimization

la tecnica di source optimization puograve essere realizzata tramite lrsquoestensione di TYPO3

bull ldquoSourceOptimizationrdquo

bull extkey sourceopt

CONSTANTS

sourceopt enabled = 1 enable_utf-8_support = 1 removeGenerator = 0 removeBlurScript = 1 removeComments = 1 removeCommentskeep10 = This website is powered by TYPO3usi removeCommentskeep20 = ^[ifusi formatHtml = 1 formatHtmltabSize = 1 formatHtmldebugComment = 1

Esempio di TypoScript di sourceopt

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Buone pratiche

CSS su file non inline nel body

JS in header o footer non nel body

verificare CSS e JS delle estensioni

Redirect in htacces non in realurl

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

strumenti di verifica

Page speed

bull httpsdevelopersgooglecompagespeed

Tools Pingdom

bull httpfptpingdomcom

Strumenti per webmaster di Google

bull httpswwwgooglecomwebmasterstools

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

TYPO3 CaretakerDavid Denicolograve - InteRa srl

Grazie per lrsquoattenzione

bull wwwinterait

bull twitter davdenic

bull davdenictumblrcom

Page 8: Migliorare le performance Frontend con TYPO3

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

merge minify compress

le tecniche di Merge Minify Compress su CSS e JS possono essere realizzate tramite lrsquoestensione di TYPO3

bull ldquoCSSJavascript Minificator Compressorrdquo

bull extkey scriptmerger

bull occorre configurare htaccess

plugintx_scriptmerger css enable = 1 addContentInDocument = 0

minification minify enable = 1 ignore = min

gzip compression compress enable = 1 ignore = gz

merging merge enable = 1 ignore = charset uniqueCharset enable = 1 value = charset UTF-8

plugintx_scriptmerger javascript enable = 1 parseBody = 0 addBeforeBody = 0 doNotRemoveInDocInBody = 1 addContentInDocument = 0

minification minify enable = 1 useJSMinPlus = 1 ignore = min

gzip compression compress enable = 1 ignore = gz

merging merge enable = 1 ignore = externalFileCacheLifetime = 3600

Esempio di TypoScript di scriptmerger

BEGIN EXTscriptmerger

Removal of ETag (saves some bytes the last modified header is still there)FileETag MTime SizeltIfModule mod_headerscgt FileETag noneltIfModulegt

Client caching of JSCSS files (because they are merged with an applied hash) Note Unsetting of the last modified header causes a permant 200 Ok statusltFilesMatch (merge|min|gz)(gz)(js|css)gt ltIfModule mod_expirescgt ExpiresActive on ExpiresDefault access plus 1 year ltIfModulegt

ltIfModule mod_headerscgt Header append Cache-Control public ltIfModulegtltFilesMatchgt

deliver the uncompressed file if gzip encoding isnt acceptedAddEncoding x-gzip gzRewriteCond HTTPaccept-encoding gzip [NC]RewriteRule ^typo3tempscriptmergercompressed(+)gz(js|css) typo3tempscriptmergeruncompressed$1$2 [LNC]

END EXTscriptmerger

Esempio di htaccess di scriptmerger

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

source optimization

la tecnica di source optimization puograve essere realizzata tramite lrsquoestensione di TYPO3

bull ldquoSourceOptimizationrdquo

bull extkey sourceopt

CONSTANTS

sourceopt enabled = 1 enable_utf-8_support = 1 removeGenerator = 0 removeBlurScript = 1 removeComments = 1 removeCommentskeep10 = This website is powered by TYPO3usi removeCommentskeep20 = ^[ifusi formatHtml = 1 formatHtmltabSize = 1 formatHtmldebugComment = 1

Esempio di TypoScript di sourceopt

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Buone pratiche

CSS su file non inline nel body

JS in header o footer non nel body

verificare CSS e JS delle estensioni

Redirect in htacces non in realurl

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

strumenti di verifica

Page speed

bull httpsdevelopersgooglecompagespeed

Tools Pingdom

bull httpfptpingdomcom

Strumenti per webmaster di Google

bull httpswwwgooglecomwebmasterstools

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

TYPO3 CaretakerDavid Denicolograve - InteRa srl

Grazie per lrsquoattenzione

bull wwwinterait

bull twitter davdenic

bull davdenictumblrcom

Page 9: Migliorare le performance Frontend con TYPO3

plugintx_scriptmerger css enable = 1 addContentInDocument = 0

minification minify enable = 1 ignore = min

gzip compression compress enable = 1 ignore = gz

merging merge enable = 1 ignore = charset uniqueCharset enable = 1 value = charset UTF-8

plugintx_scriptmerger javascript enable = 1 parseBody = 0 addBeforeBody = 0 doNotRemoveInDocInBody = 1 addContentInDocument = 0

minification minify enable = 1 useJSMinPlus = 1 ignore = min

gzip compression compress enable = 1 ignore = gz

merging merge enable = 1 ignore = externalFileCacheLifetime = 3600

Esempio di TypoScript di scriptmerger

BEGIN EXTscriptmerger

Removal of ETag (saves some bytes the last modified header is still there)FileETag MTime SizeltIfModule mod_headerscgt FileETag noneltIfModulegt

Client caching of JSCSS files (because they are merged with an applied hash) Note Unsetting of the last modified header causes a permant 200 Ok statusltFilesMatch (merge|min|gz)(gz)(js|css)gt ltIfModule mod_expirescgt ExpiresActive on ExpiresDefault access plus 1 year ltIfModulegt

ltIfModule mod_headerscgt Header append Cache-Control public ltIfModulegtltFilesMatchgt

deliver the uncompressed file if gzip encoding isnt acceptedAddEncoding x-gzip gzRewriteCond HTTPaccept-encoding gzip [NC]RewriteRule ^typo3tempscriptmergercompressed(+)gz(js|css) typo3tempscriptmergeruncompressed$1$2 [LNC]

END EXTscriptmerger

Esempio di htaccess di scriptmerger

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

source optimization

la tecnica di source optimization puograve essere realizzata tramite lrsquoestensione di TYPO3

bull ldquoSourceOptimizationrdquo

bull extkey sourceopt

CONSTANTS

sourceopt enabled = 1 enable_utf-8_support = 1 removeGenerator = 0 removeBlurScript = 1 removeComments = 1 removeCommentskeep10 = This website is powered by TYPO3usi removeCommentskeep20 = ^[ifusi formatHtml = 1 formatHtmltabSize = 1 formatHtmldebugComment = 1

Esempio di TypoScript di sourceopt

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Buone pratiche

CSS su file non inline nel body

JS in header o footer non nel body

verificare CSS e JS delle estensioni

Redirect in htacces non in realurl

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

strumenti di verifica

Page speed

bull httpsdevelopersgooglecompagespeed

Tools Pingdom

bull httpfptpingdomcom

Strumenti per webmaster di Google

bull httpswwwgooglecomwebmasterstools

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

TYPO3 CaretakerDavid Denicolograve - InteRa srl

Grazie per lrsquoattenzione

bull wwwinterait

bull twitter davdenic

bull davdenictumblrcom

Page 10: Migliorare le performance Frontend con TYPO3

BEGIN EXTscriptmerger

Removal of ETag (saves some bytes the last modified header is still there)FileETag MTime SizeltIfModule mod_headerscgt FileETag noneltIfModulegt

Client caching of JSCSS files (because they are merged with an applied hash) Note Unsetting of the last modified header causes a permant 200 Ok statusltFilesMatch (merge|min|gz)(gz)(js|css)gt ltIfModule mod_expirescgt ExpiresActive on ExpiresDefault access plus 1 year ltIfModulegt

ltIfModule mod_headerscgt Header append Cache-Control public ltIfModulegtltFilesMatchgt

deliver the uncompressed file if gzip encoding isnt acceptedAddEncoding x-gzip gzRewriteCond HTTPaccept-encoding gzip [NC]RewriteRule ^typo3tempscriptmergercompressed(+)gz(js|css) typo3tempscriptmergeruncompressed$1$2 [LNC]

END EXTscriptmerger

Esempio di htaccess di scriptmerger

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

source optimization

la tecnica di source optimization puograve essere realizzata tramite lrsquoestensione di TYPO3

bull ldquoSourceOptimizationrdquo

bull extkey sourceopt

CONSTANTS

sourceopt enabled = 1 enable_utf-8_support = 1 removeGenerator = 0 removeBlurScript = 1 removeComments = 1 removeCommentskeep10 = This website is powered by TYPO3usi removeCommentskeep20 = ^[ifusi formatHtml = 1 formatHtmltabSize = 1 formatHtmldebugComment = 1

Esempio di TypoScript di sourceopt

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Buone pratiche

CSS su file non inline nel body

JS in header o footer non nel body

verificare CSS e JS delle estensioni

Redirect in htacces non in realurl

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

strumenti di verifica

Page speed

bull httpsdevelopersgooglecompagespeed

Tools Pingdom

bull httpfptpingdomcom

Strumenti per webmaster di Google

bull httpswwwgooglecomwebmasterstools

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

TYPO3 CaretakerDavid Denicolograve - InteRa srl

Grazie per lrsquoattenzione

bull wwwinterait

bull twitter davdenic

bull davdenictumblrcom

Page 11: Migliorare le performance Frontend con TYPO3

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

source optimization

la tecnica di source optimization puograve essere realizzata tramite lrsquoestensione di TYPO3

bull ldquoSourceOptimizationrdquo

bull extkey sourceopt

CONSTANTS

sourceopt enabled = 1 enable_utf-8_support = 1 removeGenerator = 0 removeBlurScript = 1 removeComments = 1 removeCommentskeep10 = This website is powered by TYPO3usi removeCommentskeep20 = ^[ifusi formatHtml = 1 formatHtmltabSize = 1 formatHtmldebugComment = 1

Esempio di TypoScript di sourceopt

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Buone pratiche

CSS su file non inline nel body

JS in header o footer non nel body

verificare CSS e JS delle estensioni

Redirect in htacces non in realurl

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

strumenti di verifica

Page speed

bull httpsdevelopersgooglecompagespeed

Tools Pingdom

bull httpfptpingdomcom

Strumenti per webmaster di Google

bull httpswwwgooglecomwebmasterstools

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

TYPO3 CaretakerDavid Denicolograve - InteRa srl

Grazie per lrsquoattenzione

bull wwwinterait

bull twitter davdenic

bull davdenictumblrcom

Page 12: Migliorare le performance Frontend con TYPO3

CONSTANTS

sourceopt enabled = 1 enable_utf-8_support = 1 removeGenerator = 0 removeBlurScript = 1 removeComments = 1 removeCommentskeep10 = This website is powered by TYPO3usi removeCommentskeep20 = ^[ifusi formatHtml = 1 formatHtmltabSize = 1 formatHtmldebugComment = 1

Esempio di TypoScript di sourceopt

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Buone pratiche

CSS su file non inline nel body

JS in header o footer non nel body

verificare CSS e JS delle estensioni

Redirect in htacces non in realurl

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

strumenti di verifica

Page speed

bull httpsdevelopersgooglecompagespeed

Tools Pingdom

bull httpfptpingdomcom

Strumenti per webmaster di Google

bull httpswwwgooglecomwebmasterstools

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

TYPO3 CaretakerDavid Denicolograve - InteRa srl

Grazie per lrsquoattenzione

bull wwwinterait

bull twitter davdenic

bull davdenictumblrcom

Page 13: Migliorare le performance Frontend con TYPO3

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

Buone pratiche

CSS su file non inline nel body

JS in header o footer non nel body

verificare CSS e JS delle estensioni

Redirect in htacces non in realurl

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

strumenti di verifica

Page speed

bull httpsdevelopersgooglecompagespeed

Tools Pingdom

bull httpfptpingdomcom

Strumenti per webmaster di Google

bull httpswwwgooglecomwebmasterstools

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

TYPO3 CaretakerDavid Denicolograve - InteRa srl

Grazie per lrsquoattenzione

bull wwwinterait

bull twitter davdenic

bull davdenictumblrcom

Page 14: Migliorare le performance Frontend con TYPO3

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

Migliorare le performance Front-EndDavid Denicolograve - InteRa srl

strumenti di verifica

Page speed

bull httpsdevelopersgooglecompagespeed

Tools Pingdom

bull httpfptpingdomcom

Strumenti per webmaster di Google

bull httpswwwgooglecomwebmasterstools

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

TYPO3 CaretakerDavid Denicolograve - InteRa srl

Grazie per lrsquoattenzione

bull wwwinterait

bull twitter davdenic

bull davdenictumblrcom

Page 15: Migliorare le performance Frontend con TYPO3

T3Camp ItaliaLrsquoevento italiano dedicato a TYPO3

TYPO3 CaretakerDavid Denicolograve - InteRa srl

Grazie per lrsquoattenzione

bull wwwinterait

bull twitter davdenic

bull davdenictumblrcom