{"id":88905,"date":"2020-07-16T07:42:06","date_gmt":"2020-07-16T05:42:06","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/apache-nginx-svyazany-odnoj-czepyu"},"modified":"2020-07-16T07:42:06","modified_gmt":"2020-07-16T05:42:06","slug":"apache-nginx-svyazany-odnoj-czepyu","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/apache-nginx-svyazany-odnoj-czepyu","title":{"rendered":"Apache &amp; Nginx. Legati da una catena","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><i>Come \u00e8 realizzata l'integrazione tra Apache &amp; Nginx in Timeweb<\/i><\/p>\n<p>Per molte aziende, Nginx + Apache + PHP \u00e8 una combinazione molto standard e diffusa, e Timeweb non fa eccezione. Tuttavia, pu\u00f2 essere interessante e utile capire come sia realizzata esattamente. <\/p>\n<p><img decoding=\"async\" alt=\"Apache &amp; Nginx. Collegati da una catena\" src=\"\/wp-content\/uploads\/2020\/07\/2d22a78f35b7f46c260ed4ece2d9eb46.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nL'uso di questa combinazione \u00e8 ovviamente dettato dalle esigenze dei nostri clienti. Sia Nginx che Apache svolgono ruoli importanti, ciascuno risolvendo specifiche esigenze.<\/p>\n<p>Impostazioni principali <b>Apache<\/b> vengono eseguite nei file di configurazione di Apache stesso, mentre le impostazioni per i siti dei clienti avvengono tramite <b>il file .htaccess<\/b>.htaccess \u00e8 un file di configurazione in cui il cliente pu\u00f2 impostare autonomamente regole e comportamenti del server web. Queste impostazioni riguardano specificamente il proprio sito. Ad esempio, grazie alla funzionalit\u00e0 di Apache, gli utenti possono cambiare il modo di operare all'interno di una stessa versione di PHP da mod_php a mod_cgi; \u00e8 possibile impostare reindirizzamenti, ottimizzazione per SEO, URL user-friendly, alcuni limiti per PHP.<\/p>\n<p><b>Nginx<\/b> viene utilizzato come server proxy per reindirizzare il traffico su Apache e come <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/it\/server\/\"   title=\"server web\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"1156\">server web<\/a> per servire contenuti statici. Inoltre, per Nginx abbiamo sviluppato moduli di sicurezza che consentono di proteggere i dati dei nostri utenti, ad esempio separando i diritti di accesso. <\/p>\n<p>Immaginiamo che un certo utente acceda al sito del nostro cliente. Inizialmente, l'utente arriva su Nginx, che fornisce contenuti statici. Questo avviene istantaneamente. Poi, quando si tratta di caricare PHP, Nginx reindirizza la richiesta ad Apache. E Apache, insieme a PHP, genera contenuti dinamici.<\/p>\n<h3>Caratteristiche della combinazione Apache &amp; Nginx in Timeweb <\/h3>\n<p>\nNel nostro hosting virtuale sono implementati 2 schemi principali di funzionamento di Apache &amp; Nginx: <b>Condiviso e Dedicato<\/b>.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\n<b>Schema Condiviso<\/b><\/p>\n<p>Questo schema \u00e8 utilizzato dalla maggior parte degli utenti. Si distingue per la sua semplicit\u00e0 e il suo consumo di risorse: lo schema Condiviso utilizza meno risorse, quindi le sue tariffe sono pi\u00f9 basse. Secondo questo schema, sul server \u00e8 in esecuzione un solo Nginx, che consente di gestire tutte le richieste degli utenti, insieme a pi\u00f9 istanze di Apache.<\/p>\n<p>Lo schema Condiviso \u00e8 stato perfezionato nel tempo: gradualmente abbiamo corretto i difetti. \u00c8 comodo che possa essere realizzato senza la necessit\u00e0 di modificare il codice sorgente.<\/p>\n<p><img decoding=\"async\" alt=\"Apache &amp; Nginx. Collegati da una catena\" src=\"\/wp-content\/uploads\/2020\/07\/69fc0dfaa26a8d289116435879bc7dbb.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>schema Condivisa <\/i><\/p>\n<p><b>Schema Dedicato<\/b><\/p>\n<p>Il Dedicated richiede pi\u00f9 risorse, quindi la sua tariffa \u00e8 pi\u00f9 alta per i clienti. Nello schema Dedicated, per ogni cliente viene avviato un proprio Apache separato. Le risorse qui sono riservate per il cliente e vengono allocate in modo esclusivo. Come funziona: sul server ci sono diverse versioni di PHP. Sosteniamo le versioni 5.3, 5.4, 5.6, 7.1, 7.2, 7.3, 7.4. Quindi, per ogni versione di PHP viene avviato un proprio Apache.<\/p>\n<p><img decoding=\"async\" alt=\"Apache &amp; Nginx. Collegati da una catena\" src=\"\/wp-content\/uploads\/2020\/07\/1ad6ea3651d18718afe43aa111d030a4.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>schema Dedicated<\/i><\/p>\n<h3>Safe zone. Configurazione delle zone in Nginx<\/h3>\n<p>\nIn precedenza, per Nginx utilizzavamo molte zone di memoria condivisa (zone) - un blocco server per ogni dominio. Questa configurazione richiede molte risorse, poich\u00e9 per ogni sito viene creata una zona separata. Tuttavia, nelle impostazioni di Nginx, la maggior parte dei siti \u00e8 simile, quindi riescono a essere collocati in un'unica zona grazie all'uso delle direttive map nel modulo <b>ngx_http_map_module<\/b>, che consentono di impostare corrispondenze. Ad esempio, abbiamo un modello di zona a cui dobbiamo fornire variabili: percorso del sito, versione PHP, utente. In questo modo, \u00e8 accelerata la lettura della configurazione di Nginx, cio\u00e8 il reload.<\/p>\n<p>Questa configurazione ha notevolmente risparmiato risorse di memoria e ha accelerato il funzionamento di Nginx.<\/p>\n<h3>Il reload non avr\u00e0 luogo! <\/h3>\n<p>\nNello schema Shared ci siamo liberati dalla necessit\u00e0 di riavviare (reload) Apache quando si apportano modifiche alle impostazioni dei siti. In precedenza, quando un cliente voleva aggiungere un dominio o cambiare versione PHP, era richiesta un'operazione di reload di Apache, il che portava a ritardi nelle risposte e influiva negativamente sulle prestazioni dei siti.<\/p>\n<p>Abbiamo eliminato i reload creando configurazioni dinamiche. Grazie a <noindex><a rel=\"nofollow\" href=\"http:\/\/mpm-itk.sesse.net\/\">mpm-itk<\/a><\/noindex> (modulo Apache), ogni processo viene eseguito da un utente separato, aumentando cos\u00ec il livello di sicurezza. Questo metodo consente di trasferire da Nginx ad Apache2 i dati dell'utente e il suo document_root. Pertanto, Apache non contiene la configurazione dei siti, la riceve in modo dinamico e non sono pi\u00f9 necessari i reload.<\/p>\n<p><img decoding=\"async\" alt=\"Apache &amp; Nginx. Collegati da una catena\" src=\"\/wp-content\/uploads\/2020\/07\/6f033a26459b4448a5df80fef7efd36e.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Configurazione dello schema Shared<\/i> <\/p>\n<h3>E per quanto riguarda Docker?<\/h3>\n<p>\nMolte aziende sono passate a sistemi basati su container. Timeweb sta attualmente valutando la possibilit\u00e0 di questa transizione. Sicuramente, in ogni soluzione si possono trovare vantaggi e svantaggi. <\/p>\n<p>Oltre ai vantaggi indiscutibili, il sistema in contenitore offre meno risorse all'utente. In Timeweb, grazie allo schema di funzionamento descritto dell'hosting, l'utente non ha limiti nella memoria RAM. Riceve pi\u00f9 risorse rispetto al contenitore. Inoltre, l'utente pu\u00f2 caricare pi\u00f9 moduli di Apache.<\/p>\n<p>Timeweb gestisce circa 500.000 siti. Ci prendiamo una grande responsabilit\u00e0 e non apportiamo cambiamenti immediati e ingiustificati a un'architettura complessa. La combinazione di Apache &amp; Nginx \u00e8 affidabile e collaudata nel tempo. Da parte nostra, ci sforziamo di raggiungere le massime prestazioni grazie a configurazioni uniche.<\/p>\n<p>Per garantire un funzionamento di qualit\u00e0 e rapido di un grande numero di siti \u00e8 necessario utilizzare una configurazione templata e dinamica di Apache e Nginx. Essa consente di amministrare in modo semplice e veloce un elevato numero di server simili.<br \/>\n<br \/>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/timeweb\/blog\/510896\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u0430\u043a \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u0441\u0432\u044f\u0437\u043a\u0430 Apache &amp; Nginx \u0432 Timeweb \u0414\u043b\u044f \u043c\u043d\u043e\u0433\u0438\u0445 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0439 Nginx + Apache + PHP \u2014 \u043e\u0447\u0435\u043d\u044c \u0442\u0438\u043f\u043e\u0432\u0430\u044f \u0438 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u043d\u0430\u044f \u0441\u0432\u044f\u0437\u043a\u0430, \u0438 Timeweb \u0437\u0434\u0435\u0441\u044c \u043d\u0435 \u0441\u0442\u0430\u043b \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c. \u041e\u0434\u043d\u0430\u043a\u043e \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f, \u043a\u0430\u043a \u0438\u043c\u0435\u043d\u043d\u043e \u043e\u043d\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430, \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043b\u044e\u0431\u043e\u043f\u044b\u0442\u043d\u043e \u0438 \u043f\u043e\u043b\u0435\u0437\u043d\u043e. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0442\u0430\u043a\u043e\u0439 \u0441\u0432\u044f\u0437\u043a\u0438, \u043a\u043e\u043d\u0435\u0447\u043d\u043e, \u043f\u0440\u043e\u0434\u0438\u043a\u0442\u043e\u0432\u0430\u043d\u043e \u043f\u043e\u0442\u0440\u0435\u0431\u043d\u043e\u0441\u0442\u044f\u043c\u0438 \u043d\u0430\u0448\u0438\u0445 \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432. \u0418 Nginx \u0438 Apache \u0438\u0433\u0440\u0430\u044e\u0442 \u043e\u0441\u043e\u0431\u0443\u044e \u0440\u043e\u043b\u044c, \u043a\u0430\u0436\u0434\u044b\u0439 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":88906,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-88905","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u0430\u043a \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u0441\u0432\u044f\u0437\u043a\u0430 Apache &amp; Nginx \u0432 Timeweb \u0414\u043b\u044f \u043c\u043d\u043e\u0433\u0438\u0445 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0439 Nginx + Apache + PHP \u2014 \u043e\u0447\u0435\u043d\u044c \u0442\u0438\u043f\u043e\u0432\u0430\u044f \u0438 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u043d\u0430\u044f \u0441\u0432\u044f\u0437\u043a\u0430, \u0438 Timeweb \u0437\u0434\u0435\u0441\u044c \u043d\u0435 \u0441\u0442\u0430\u043b \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/apache-nginx-svyazany-odnoj-czepyu\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47Apache &amp; Nginx. \u0421\u0432\u044f\u0437\u0430\u043d\u044b \u043e\u0434\u043d\u043e\u0439 \u0446\u0435\u043f\u044c\u044e | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u0430\u043a \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u0441\u0432\u044f\u0437\u043a\u0430 Apache &amp; Nginx \u0432 Timeweb \u0414\u043b\u044f \u043c\u043d\u043e\u0433\u0438\u0445 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0439 Nginx + Apache + PHP \u2014 \u043e\u0447\u0435\u043d\u044c \u0442\u0438\u043f\u043e\u0432\u0430\u044f \u0438 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u043d\u0430\u044f \u0441\u0432\u044f\u0437\u043a\u0430, \u0438 Timeweb \u0437\u0434\u0435\u0441\u044c \u043d\u0435 \u0441\u0442\u0430\u043b \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/apache-nginx-svyazany-odnoj-czepyu\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-07-16T05:42:06+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-07-16T05:42:06+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Apache &amp; Nginx. Collegati da una catena | ProHoster","description":"Come \u00e8 realizzata la combinazione di Apache &amp; Nginx in Timeweb. Per molte aziende, Nginx + Apache + PHP \u00e8 una combinazione molto comune e diffusa, e Timeweb non \u00e8 un'eccezione.","canonical_url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/apache-nginx-svyazany-odnoj-czepyu","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47Apache &amp; Nginx. \u0421\u0432\u044f\u0437\u0430\u043d\u044b \u043e\u0434\u043d\u043e\u0439 \u0446\u0435\u043f\u044c\u044e | ProHoster","og:description":"\u041a\u0430\u043a \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u0441\u0432\u044f\u0437\u043a\u0430 Apache &amp; Nginx \u0432 Timeweb \u0414\u043b\u044f \u043c\u043d\u043e\u0433\u0438\u0445 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0439 Nginx + Apache + PHP \u2014 \u043e\u0447\u0435\u043d\u044c \u0442\u0438\u043f\u043e\u0432\u0430\u044f \u0438 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u043d\u0430\u044f \u0441\u0432\u044f\u0437\u043a\u0430, \u0438 Timeweb \u0437\u0434\u0435\u0441\u044c \u043d\u0435 \u0441\u0442\u0430\u043b \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c.","og:url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/apache-nginx-svyazany-odnoj-czepyu","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-07-16T05:42:06+00:00","article:modified_time":"2020-07-16T05:42:06+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"88905","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 13:20:24","updated":"2026-02-09 15:05:02","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/88905","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=88905"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/88905\/revisions"}],"predecessor-version":[{"id":158359,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/88905\/revisions\/158359"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media\/88906"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=88905"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=88905"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=88905"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}