61
à
OPCIONAL
: Se estiver usando um
content distribution network (CDN)
é possível não armazenar em cache
recursos estáticos para que o CDN
possa servi-los.
à
OPCIONAL
: Permitir que usuários
logados posam ver páginas não
cachedas (uncached).
WordPress Plugin –
Varnish HTTP Purge
Finalmente, para permitir que
o WordPress se comunique com
o Varnish, enviando comandos
para informar mudanças nas
páginas, é interessante instalar
o plugin Varnish http Purge. É
como qualquer outro plugin
WordPress, fácil de ser instalado
por este endereço:
https://wordpress.org/plugins/varnish-http-purge.
Quando um post é alterado
ou deletado, um novo post é
FULDGR RX R WHPD « PRGLíFDGR DV
URLs são purgadas, para atualizar
as páginas e o conteúdo.
Conclusão
Embora não seja difícil de
LQVWDODU QHP GH FRQíJXUDU R
Varnish exige algum conhecimento
do usuário e certo cuidado na
instalação. Além, é claro, de acesso
ao servidor Linux e aos programas
relacionados, como Apache.
Ainda assim, é um
excelente auxiliar na melhora da
performance e na resposta não
apenas do WordPress mas de
todo tipo de acesso ao servidor.
Código do arquivo de
FRQëJXUD©¥R 9DUQLVK FRP
ajustes para WordPress:
/* SET THE HOST AND PORT OF
WORDPRESS
* ************************
***************************
******/
backend default {
.host = "127.0.0.1";
.port = "8080";
}
# SET THE ALLOWED IP OF
PURGE REQUESTS
# ########################
###########################
#######
acl purge {
"localhost";
"162.243.20.190";
}
# THE RECV FUNCTION
# ########################
###########################
#######
sub vcl_recv {
# For Testing: If you want
to test with Varnish passing
(not caching) uncomment
# return( pass );
# FORWARD THE IP OF THE
REQUEST
if (req.restarts == 0) {
if (req.http.x-
forwarded-for) {
set req.http.X-
Forwarded-For =
Grandes empresas, com alto fluxo de dados em seus sites, utilizam o Varnish: um exemplo é o
New York Times
[
EMBORA NÃO SEJA DIFÍCIL DE CONFIGURAR,
O VARNISH EXIGE ALGUM CONHECIMENTO DO
USUÁRIO E CUIDADO NA INSTALAÇÃO
]
req.http.X-Forwarded-
For + ", " + client.ip;
} else {
set req.http.X-
Forwarded-For = client.ip;
}
}
# CLEAN UP THE
ENCODING HEADER.
# SET TO GZIP, DEFLATE, OR
REMOVE ENTIRELY. WITH VARY
ACCEPT-ENCODING
# VARNISH WILL CREATE
SEPARATE CACHES FOR EACH
# DO NOT ACCEPT-ENCODING
IMAGES, ZIPPED FILES, AUDIO,
ETC.
# ########################
###########################
#######
if (req.http.Accept-
Encoding) {
if (req.url ~ "\.(jpg|pn
g|gif|gz|tgz|bz2|tbz|mp3|o
gg)$") {
# No point in
REVISTA LOCAWEB