{"id":156,"date":"2021-04-23T10:00:11","date_gmt":"2021-04-23T08:00:11","guid":{"rendered":"https:\/\/www.hostgento.com\/blog\/?p=156"},"modified":"2021-12-10T18:12:49","modified_gmt":"2021-12-10T18:12:49","slug":"come-configurare-varnish-in-magento-2","status":"publish","type":"post","link":"https:\/\/www.bhoost.com\/it\/piattaforme-ecommerce\/come-configurare-varnish-in-magento-2\/","title":{"rendered":"Come Configurare Varnish in Magento 2&#8243;"},"content":{"rendered":"<p><a href=\"https:\/\/varnish-cache.org\/\">Varnish Cache<\/a> \u00e8 un acceleratore di applicazioni Web open source (noto anche come HTTP accelerator o caching HTTP reverse proxy). Varnish archivia (o memorizza nella cache) file o frammenti di file in memoria; questo consente a Varnish di ridurre il tempo di risposta e il consumo di banda di rete su future richieste equivalenti. A differenza dei server web come Apache e nginx, Varnish \u00e8 stato progettato per essere utilizzato esclusivamente con il protocollo HTTP.<\/p>\n<p>Magento 2.4.2 \u00e8 testato con Varnish 6.4. Magento 2.4.x \u00e8 compatibile con Varnish 6.x<br \/>\nLo stesso Magento consiglia vivamente di utilizzare Varnish in produzione. Il Built in full page caching (nel file system o nel database) \u00e8 molto pi\u00f9 lento di Varnish e Varnish \u00e8 progettato per accelerare il traffico HTTP.<\/p>\n<p>Puoi trovare ulteriori informazioni nel link di seguito:<\/p>\n<ul>\n<li><a href=\"https:\/\/en.wikipedia.org\/wiki\/Varnish_%28software%29\">Wikipedia<\/a><\/li>\n<li><a href=\"https:\/\/www.varnish-cache.org\/docs\/trunk\/users-guide\/intro.html\">The Big Varnish Picture<\/a><\/li>\n<li><a href=\"https:\/\/www.varnish-cache.org\/docs\/trunk\/reference\/varnishd.html#ref-varnishd-options\">Varnish startup options<\/a><\/li>\n<li><a href=\"https:\/\/www.varnish-cache.org\/docs\/trunk\/users-guide\/performance.html#users-performance\">Varnish and Website Performance<\/a><\/li>\n<\/ul>\n<p>Diagramma della topologia di Varnish<br \/>\nLa figura seguente ti mostra una visione di base di Varnish nella topologia di Magento.<\/p>\n<p><img decoding=\"async\" class=\"aligncenter wp-image-157 size-large\" src=\"https:\/\/www.hostgento.com\/blog\/wp-content\/uploads\/2021\/04\/varnish_basic-630x1024.png\" alt=\"varnish_basic\" \/><\/p>\n<p>Nella figura precedente si pu\u00f2 vedere come le richieste HTTP degli utenti su Internet danno luogo a numerose richieste di CSS, HTML, JavaScript e immagini (denominate collettivamente risorse). Varnish si trova di fronte al server web e inoltra queste richieste al server web.<\/p>\n<p>Quando il server Web restituisce le risorse, le risorse memorizzabili nella cache vengono archiviate in Varnish. Eventuali richieste successive per tali risorse vengono soddisfatte da Varnish stesso (il che significa che le richieste non raggiungono il server web). Varnish quindi restituisce il contenuto memorizzato nella cache in modo estremamente rapido. I risultati sono <strong>tempi di risposta pi\u00f9 rapidi<\/strong> per restituire il contenuto agli utenti e <strong>un numero ridotto di richieste che devono essere soddisfatte da Magento<\/strong>.<\/p>\n<p>Le risorse memorizzate nella cache da Varnish scadono a un intervallo configurabile o vengono sostituite da versioni pi\u00f9 recenti delle stesse risorse. Puoi anche svuotare la cache manualmente utilizzando Magento Admin o il comando <em>magento cache: clean<\/em>.<\/p>\n<h2>Panoramica del processo<\/h2>\n<p>In questa sezione vedremo come installare inizialmente Varnish con un set minimo di parametri e testarne il funzionamento. Quindi esporterai una configurazione di Varnish dall&#8217;admin di Magento e la testerai di nuovo.<\/p>\n<p>Il processo pu\u00f2 essere riassunto come segue:<\/p>\n<ul>\n<li>Installa Varnish e testalo accedendo a qualsiasi pagina Magento per vedere se stai ricevendo intestazioni di risposta HTTP che indicano che Varnish sta funzionando.<\/li>\n<li>Installa il software Magento e utilizza il Magento Admin per creare un file di configurazione di Varnish.<\/li>\n<li>Sostituisci il tuo file di configurazione Varnish esistente con quello generato dall&#8217;amministratore.<\/li>\n<li>Prova di nuovo tutto.<\/li>\n<\/ul>\n<p>Se non c&#8217;\u00e8 niente nella tua directory <em>&lt;magento_root&gt; \/ var \/ page_cache,<\/em> hai configurato correttamente Varnish con Magento!<\/p>\n<p>Tranne dove diversamente specificato, \u00e8 necessario immettere tutti i comandi discussi poco fa, come utente con privilegi di root.<br \/>\nQuesto vale per Varnish su CentOS e Apache 2.4. Se stai configurando Varnish in un ambiente diverso, alcuni comandi potrebbero essere diversi. Consulta la documentazione di Varnish per ulteriori informazioni.<\/p>\n<h2>Problemi riscontrati<\/h2>\n<p>In questo processo possono crearsi alcuni problemi, vediamo quali:<\/p>\n<ul>\n<li>Varnish non supporta SSL<br \/>\nIn alternativa, utilizza la terminazione SSL o un <a href=\"https:\/\/en.wikipedia.org\/wiki\/TLS_termination_proxy\">proxy di terminazione SSL<\/a>.<\/li>\n<li>Se elimini manualmente il contenuto della directory <em>&lt;magento_root&gt; \/ var \/ cache<\/em>, devi riavviare Varnish.<\/li>\n<li>Possibile errore durante l&#8217;installazione di Magento:<\/li>\n<\/ul>\n<pre class=\"highlighter\"><code><\/code><\/pre>\n<table class=\"rouge-table\">\n<tbody>\n<tr>\n<td class=\"rouge-code\">\n<pre><span class=\"go\">Error 503 Service Unavailable\nService Unavailable\nXID: 303394517\nVarnish cache server\n<\/span><\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p class=\"highlighter\"><code><\/code><br \/>\nSe si verifica questo errore, modifica <em>default.vcl<\/em> e aggiungi un timeout al backend come segue:<\/p>\n<pre class=\"highlighter\"><code><\/code><\/pre>\n<table class=\"rouge-table\">\n<tbody>\n<tr>\n<td class=\"rouge-code\">\n<pre><span class=\"n\">backend<\/span> <span class=\"n\">default<\/span> {\n    .<span class=\"n\">host<\/span> = <span class=\"s2\">\"127.0.0.1\"<\/span>;\n    .<span class=\"n\">port<\/span> = <span class=\"s2\">\"8080\"<\/span>;\n    .<span class=\"n\">first_byte_timeout<\/span> = <span class=\"m\">600<\/span><span class=\"n\">s<\/span>;\n}\n<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<pre><\/pre>\n<pre class=\"highlighter\"><code><\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Varnish Cache \u00e8 un acceleratore di applicazioni Web open source (noto anche come HTTP accelerator o caching HTTP reverse proxy). [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":159,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"image","meta":{"_acf_changed":false,"_uag_custom_page_level_css":"","footnotes":""},"categories":[1],"tags":[16],"class_list":["post-156","post","type-post","status-publish","format-image","has-post-thumbnail","hentry","category-piattaforme-ecommerce","tag-magento","post_format-post-format-image"],"acf":[],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false},"uagb_author_info":{"display_name":"admin","author_link":"https:\/\/www.bhoost.com\/it\/author\/andreasacca_vd0s1ik8\/"},"uagb_comment_info":8,"uagb_excerpt":"Varnish Cache \u00e8 un acceleratore di applicazioni Web open source (noto anche come HTTP accelerator o caching HTTP reverse proxy). [&hellip;]","jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/www.bhoost.com\/it\/wp-json\/wp\/v2\/posts\/156","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bhoost.com\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bhoost.com\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bhoost.com\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bhoost.com\/it\/wp-json\/wp\/v2\/comments?post=156"}],"version-history":[{"count":1,"href":"https:\/\/www.bhoost.com\/it\/wp-json\/wp\/v2\/posts\/156\/revisions"}],"predecessor-version":[{"id":663,"href":"https:\/\/www.bhoost.com\/it\/wp-json\/wp\/v2\/posts\/156\/revisions\/663"}],"wp:attachment":[{"href":"https:\/\/www.bhoost.com\/it\/wp-json\/wp\/v2\/media?parent=156"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bhoost.com\/it\/wp-json\/wp\/v2\/categories?post=156"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bhoost.com\/it\/wp-json\/wp\/v2\/tags?post=156"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}