Com allotjar llocs web de Drupal 8 amb caché de vernís als plans VPS

Introducció: Cache de vernís per als llocs més drupals més ràpids

Això Tutorial mostrarà com instal·lar Cache del vernís en una VPS pla d’allotjament per executar un Drupal 8 lloc web d’alt rendiment, incloent la configuració dels mòduls requerits.


Hi ha diverses versions de Cache del vernís disponible on aquesta guia utilitzarà la plataforma 4.x com a instal·lació recomanada LLUM servidors amb qualsevol Linux distribució.

N’hi ha que competeixen Drupal 8 mòduls de gestió de caché disponibles amb Purga, Purga del vernís, & Purga d’Acquia usat per Etiqueta de memòria cau sistemes als llocs web de producció.

Primer pas: Instal·leu la memòria cau del vernís al servidor web

Els requisits previs per a això Tutorial estan treballant Drupal 8 lloc web que ja està en producció funcionant a LLUM servidor activat VPS o Dedicat amb accés a la línia de comandament via SSH.

Utilitzar el Sudo o Apt-Obtenir eines per instal·lar Cache del vernís mitjançant la línia d’ordres depenent de la Linux versió que s’executa al servidor web.

Per Ubuntu Linux servidors web:

vernís sudo apt-get install -y

Per Linux Debian servidors web:

vernís d’instal·lació apt-get

A continuació, aneu a la secció Vernís fitxer de configuració situat a: / etc / default / vernís

Obriu el fitxer en un editor de text i afegiu-hi les línies següents al text:

DAEMON _OPTS ="-a: 80
-Localitat local: 6082
-f /etc/varnish/default.vcl
-s malloc, 512m"
-S / etc / vernís / secret

Cal crear un nou vernís.servici fitxer a: /etc/systemd/system/varnish.service amb el text següent:

[Unitat]
Descripció = Accelerador HTTP de vernís
Documentació = https: //www.varnish-cache.org/docs/4.1/ man: varnishd

[Servei]
Tipus = simple
LímitNOFILE = 131072
LimitMEMLOCK = 82000
ExecStart = / usr / sbin / varnishd -j unix, user = vcache -F -a: 80 -T localhost: 6082 -f /etc/varnish/default.vcl -S / etc / vernís / secret -s malloc, 512m
ProtectSystem = complet
ProtectHome = true
PrivateTmp = true
PrivateDevices = true

[Instal·lar]
WantedBy = multi-user.target

Crea el fitxer & penjar / desar al servidor web. A continuació, torneu a carregar Vernís configuració:

systemctl daemon-reload

A continuació, aneu a: /etc/varnish/default.vcl i fes una còpia de seguretat del document predeterminat.vcl dossier. Deseu la còpia de seguretat i crea un fitxer nou amb el codi següent:

backend predeterminat {

.host = "exemple.com";

.port = "8080";

}

# Llista de control d’accés per a sol·licituds PURGE.
# Aquí heu de posar l’adreça IP del servidor web
purga acl {
"127.0.0.1";
}

# Respon a les sol·licituds entrants.
sub vcl_recv {
# Afegeix una capçalera de X-Forwarded-For amb l’adreça IP del client.
if (req.restarts == 0) {
if (req.http.X-Forwarded-For) {
set req.http.X-Forwarded-For = req.http.X-Forwarded-For + ", " + client.ip;
}
més {
set req.http.X-Forwarded-For = client.ip;
}
}

# Només permetre PURGE sol·licituds d’adreces IP a l’ACL “purge”.
if (req.method == "PURGA") {
if (! client.ip ~ purge) {
retorn (sintetitzador (405), "No permès."));
}
retorn (hash);
}

# Només permetre peticions BAN d’adreces IP a l’ACL “purge”.
if (req.method == "PROHIBICIÓ") {
# Igual comprovació ACL que anterior:
if (! client.ip ~ purge) {
retorn (sintetitzador (403), "No permès."));
}

# Lògica per a la prohibició mitjançant l’encapçalament de les etiquetes de memòria cau. Per a més informació
# vegeu https://github.com/geerlingguy/drupal-vm/issues/397.
if (req.http.Cache-Tags) {
prohibició("obj.http.Cache-Etiquetes ~ " + req.http.Cache-Tags);
}
més {
retorn (sintetitzador (403), "Falta la capçalera de les etiquetes de caché."));
}

# Llanceu una pàgina sintètica de manera que la sol·licitud no s’atendrà al fons.
retorn (synth (200), "Va afegir prohibició."));
}

# Només la sol·licitud GET i HEAD de la memòria cau (passa per peticions POST).
if (req.method! = "ACONSEGUIR" && req.method! = "CAP") {
tornar (passar);
}

# Passeu per qualsevol camí administratiu o relacionat amb AJAX.
if (req.url ~ "^ / status.php $" ||
req.url ~ "^ / actualització.php $" ||
req.url ~ "^ / administrador $" ||
req.url ~ "^ / admin /.*$" ||
req.url ~ "^ / bandera /.*$" ||
req.url ~ "^. * / ajax /.*$" ||
req.url ~ "^. * / ahah /.*$") {
tornar (passar);
}

# Eliminació de cookies per a contingut estàtic de manera que vernís emmagatzema en memòria cau aquests fitxers.
if (req.url ~ "(? i). (pdf | asc | dat | txt | doc | xls | ppt | tgz | csv | png | gif | jpeg | jpg | ico | swf | css | js) (?. *)? $") {
unset req.http.Cookie;
}

# Eliminar totes les cookies que Drupal no necessita conèixer. Ens explícitament
# llista els que necessita Drupal, el SESS i NO_CACHE. Si, després
En executar aquest codi, trobem que qualsevol d’aquestes dues cookies queda, nosaltres
# passarà ja que la pàgina no es pot gravar a la memòria cau.
if (req.http.Cookie) {
# 1. Afegiu un punt i dos a la part frontal de la cadena de galetes.
# 2. Elimineu tots els espais que apareguin després de dos punts i punts.
# 3. Coincideix amb les cookies que volem conservar, afegint l’espai que hem suprimit
# anteriorment (1) és el primer grup coincident en el regsuball.
# 4. Eliminar totes les altres cookies, identificant-les pel fet que en tinguin
# sense espai després del punt i punt anterior.
# 5. Elimineu tots els espais i punts i punts semiconsons del començament i del final de la secció
# cadena de galetes.
set req.http.Cookie = ";" + req.http.Cookie;
set req.http.Cookie = regsuball (req.http.Cookie, "; +", ";");
set req.http.Cookie = regsuball (req.http.Cookie, "; (SESS [a-z0-9] + | SSESS [a-z0-9] + | NO_CACHE) =", "; 1 =");
set req.http.Cookie = regsuball (req.http.Cookie, "; [^] [^;] *", "");
set req.http.Cookie = regsuball (req.http.Cookie, "^ [; ] + | [; ] + $", "");

if (req.http.Cookie == "") {
# Si encara no queden cookies, elimineu l’encapçalament de la galeta. Si hi ha
# no hi ha cap capçalera de galetes, el comportament predeterminat del vernís serà a la memòria cau
# la pàgina.
unset req.http.Cookie;
}
més {
# Si queden algunes cookies (una sessió o una galeta NO_CACHE), no ho facis
# cache la pàgina. Transmiteu-lo directament a Apache.
tornar (passar);
}
}
}

# Estableix un encapçalament per rastrejar un HIT i una missa de caché.
sub vcl_deliver {
# Elimineu les capçaleres personalitzades amigables amb prohibició d’encàrrec quan envieu al client.
unset resp.http.X-Url;
unset resp.http.X-host;
# Comenteu-les per facilitar la depuració de etiquetes de caché de Drupal en desenvolupament.
unset resp.http.Cache-Etiquetes;
unset resp.http.X-Drupal-Cache-Contexts;

if (object.hits > 0) {
set resp.http.Cache-Tags = "HIT";
}
més {
set resp.http.Cache-Tags = "SENYORETA";
}
}

# Instrueix envernissar què fer en cas de determinades respostes de backend (beresp).
sub vcl_backend_response {
# Estableix capçaleres personalitzades amistoses amb prohibició.
set beresp.http.X-Url = bereq.url;
set beresp.http.X-Host = bereq.http.host;

# Cache 404s, 301s, a 500s amb poca vida útil per protegir el backend.
if (beresp.status == 404 || beresp.status == 301 || beresp.status == 500) {
conjunt beresp.ttl = 10m;
}

# No permetis que els fitxers estàtics configurin galetes.
# (? i) denota majúscules i minúscules a PCRE (expressions regulars compatibles amb perl).
# Aquesta llista d’extensions apareix dues vegades, una vegada i una altra a la versió vcl_recv
# assegureu-vos que les editeu i que les mantingueu iguals.
if (bereq.url ~ "(? i). (pdf | asc | dat | txt | doc | xls | ppt | tgz | csv | png | gif | jpeg | jpg | ico | swf | css | js) (?. *)? $") {
unset beresp.http.set-cookie;
}

# Permet que els articles romanguin a la memòria cau fins a 6 hores després de la seva caducitat.
set beresp.grace = 6h;
}

Assegureu-vos d’editar la línia per afegir l’adreça de nom de domini correcta. A continuació, aneu a: /etc/apache2/ports.conf i obriu el botó ports.conf dossier. Canvieu el text:

Escolta 80

A:

Escolta 8080

A continuació, aneu a: /etc/apache2/apache2.conf i obriu el botó apache2.conf dossier. Canvieu la configuració “AllowOverride None” a “AllowOverride All” i desa la configuració.

Opcions Índexs FollowSymLink
AllowOverrideAll
Requeriment atorgat

Per finalitzar, aneu a /etc / apache2 / llocs-disponibles & obre tots els fitxers disponibles, canviant el port de 80 a 8080 a la configuració de l’amfitrió virtual.

Al darrer pas, creeu un fitxer d’amfitrió virtual nou per al nom de domini a: /etc/apache2/sites-available/yourdomain.conf i afegiu el codi següent:

ServerAdmin [email protected]
DocumentRoot /var/www/html/example.com
Nom del servidor Server.com
ServerAlias ​​www.example.com

Aplicació SetHandler / x-httpd-php

Opcions FollowSymLinks
AllowOverrideAll

DirectoryIndex index.php
Opcions Índexs FollowSymLinks MultiViews
AllowOverrideAll
Requeriment atorgat

ErrorLog /var/log/apache2/example.com-error_log
CustomLog /var/log/apache2/example.com-access_log comú

Reinicia Apache & Cache del vernís finalitzeu la instal·lació LLUM. El Drupal 8 La configuració de configuració es pot gestionar amb mòduls d’integració al següent pas.

Pas segon: instal·leu mòduls per a la gestió de la memòria cau a Drupal 8

Hi ha molta competència entre Drupal 8 mòduls de Cache del vernís gestió amb el mòdul més popular per a Drupal 7 encara en desenvolupament & no està llest per a l’ús de producció. És possible que els mòduls anteriors no siguin compatibles Cache del vernís 4.x estàndards.

ARXIUS REQUISITS – DESCÀRREGUES:

  • Purga: (Baixeu fitxers)
  • Purificador de vernís: (Baixeu fitxers)

M MODDULS DE GESTIÓ DE CACHES ALTERNATIUS:

  • Purger HTTP genèric: (Baixeu fitxers)
  • Purga d’Acquia: (Baixeu fitxers)
  • Purga Dropsolid: (Baixeu fitxers)

8 M MODDULS DE DESENVOLUPAMENT:

  • Vernís: (Baixeu fitxers)

Als efectes d’aquest Tutorial, només cal instal·lar el sistema Purga & Purificador de vernís mòduls. Els mòduls de gestió de caché alternatius són només per a ús opcional.

Supervisar l ‘estat de la web Vernís mòdul per a Drupal 8 versió o instal·lació & prova la versió de desenvolupament per proporcionar-vos comentaris sobre errors, problemes o canvis necessaris.

Drupal 8 Es recomana que els editors tinguin Drush instal·lat per instal·lar mòduls o esborrar-ne Cache del vernís. Per a usos avançats, creeu un lloc Etiqueta de memòria cau sistema.

El Purger HTTP genèric El mòdul proporciona suport per CDN integració amb Cache del vernís & Drupal 8, que generalment manquen dels altres mòduls.

El Purga d’Acquia El mòdul està específicament destinat a Núvol d’Acquia integració. El Purga Dropsolid el mòdul reescriu el Acquia codi de versió per a tots els llocs web.

Recomanat: Desplaceu-vos a: / admin / modules / install i instal·leu el fitxer Purga & Purificador de vernís mòduls. Habilita els mòduls & reviseu la configuració de la memòria cau del lloc web global.

Tercer pas: Configura la configuració global de la memòria cau del vernís

Per optimitzar el Drupal 8 Configuració CMS per a Cache del vernís inclòs el suport de memòria cau inversa amb proxy inversa, obriu la secció settings.php fitxer trobat a / llocs / predeterminat carpeta i afegiu:

$ settings [‘reverse_proxy’] = VERITAT;
$ settings [‘reverse_proxy_addresses’] = array (‘127.0.0.1’);

Dins Drupal 8 administració, navegueu a: / admin / config / development / performance i configureu la configuració de la memòria cau segons calgui (és a dir, 15 minuts, 1 hora o 24 hores, segons el trànsit del lloc web de l’usuari i la demanda de recursos del sistema). Estableix per defecte 1 hora o 1 dia.

Com allotjar llocs web de Drupal 8 amb caché de vernís als plans VPS

Desa la configuració a “Agregar fitxers CSS” i “Agregar fitxers JavaScript” a nivell mundial:

Com allotjar llocs web de Drupal 8 amb caché de vernís als plans VPS

Per finalitzar, aneu al següent pas per configurar el Purga & Purificador de vernís mòduls inclosos Etiquetes de memòria cau o PROHIBICIÓ valors requerits per secció als llocs web d’alt trànsit.

Quatre pas: Configura els mòduls de gestió de la memòria cau de Drupal

Drupal 8 els editors web requereixen la possibilitat d’esborrar Cache del vernís, escalfeu la memòria cau amb contingut, & configurar Etiquetes de memòria cau per a diferents seccions o tipus de contingut, esborreu el comandament. Utilitzar el Purga & Purificador de vernís mòduls per a aquestes capacitats.

Desplaceu-vos a: / admin / config / development / performance / purge i seleccioneu “Purificador de vernís” com a purgador predeterminat de la memòria cau:

Com allotjar llocs web de Drupal 8 amb caché de vernís als plans VPS

Desa la configuració i selecciona una nova etiqueta per a la configuració. Tria “Etiqueta” per als Tipus i entra 127.0.0.1 per als Nom d’amfitrió amb Port 80 (Ubuntu) o 8080 (Debian) com a valors predeterminats.

Assegureu-vos de configurar “PROHIBICIÓ” com a mètode de sol·licitud amb configuració HTTP a l’esquema:

Com allotjar llocs web de Drupal 8 amb caché de vernís als plans VPS

Desa la configuració i feu clic a “Capçaleres” pestanya per definir “Etiquetes de caché de purga” com el Capçalera i “[Invalidació: expressió]” com Valor:

Com allotjar llocs web de Drupal 8 amb caché de vernís als plans VPS

Feu clic a “Configura el registre ” enllaça i afegeix marques de selecció a totes les caselles del quadre purger_varnish_xxx valor:

Com allotjar llocs web de Drupal 8 amb caché de vernís als plans VPS

Drupal 8 els desenvolupadors poden utilitzar Drush per esborrar la Vernís memòria cau:

vernís purga-tot-purgar-tot

Desplaceu-vos a: / admin / config / development / performance / purge per esborrar la Cache del vernís o utilitzeu Drush comanda amb eines CLI. Alguns usuaris de D8 prefereixen Desenvolupar mòdul.

Drupal 8 els desenvolupadors poden utilitzar eines com isvarnishworking.uk o PanteóVerificació del vernís per provar l’estat de la instal·lació al servidor web & Pàgines CMS.

Conclusió: Cache de vernís per a llocs de Drupal d’Alta Trànsit

Cache del vernís és una part absolutament essencial de a Drupal 8 Pila de servidors web per a llocs web d’alt trànsit que solen tenir més de 100 usuaris alhora o milions de visites.

Cache del vernís funciona millor amb NGINX, el Adv Agg mòdul, Redis, Memcached, Zend Opcache, APC, & a CDN servei per optimitzar a Drupal 8 servidor web per a la velocitat.

Drupal 8 Els editors web necessitaran un mínim d’un VPS o Servidor dedicat planejar córrer Cache del vernís o trieu una Hosting al núvol planificar amb Cache del vernís preinstal·lat.

Consulteu aquests tres millors serveis d’allotjament Drupal:

ChemiCloud

Preu inicial:
2,76 dòlars


Fiabilitat
10


Preu
9.9


Usuari amigable
9.9


Assistència
10


Característiques
9.9

Llegiu comentaris

Visita ChemiCloud

Hostinger

Preu inicial:
0,99 USD


Fiabilitat
9.3


Preu
9.3


Usuari amigable
9.4


Assistència
9.4


Característiques
9.2

Llegiu comentaris

Visita Hostinger

A2 Hosting

Preu inicial:
3,92 dòlars


Fiabilitat
9.3


Preu
9.0


Usuari amigable
9.3


Assistència
9.3


Característiques
9.3

Llegiu comentaris

Visita Hosting A2

Articles relacionats amb la informació

  • Com optimitzar la memòria cau de Drupal 8 amb APC en cPanel Hosting
    intermèdia
  • Com allotjar llocs web de Drupal 8 amb Redis en els plans VPS
    intermèdia
  • Com allotjar llocs web de Drupal 8 amb HHVM en els plans VPS
    intermèdia
  • Com allotjar llocs web de Drupal 8 amb servidors NGINX en plans VPS
    intermèdia
  • Com optimitzar Drupal per a Google Pagespeed?
    intermèdia
Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me