Как да използвам Varnish за ускоряване на моя уеб сайт?

Banko Stoyanov12.04.20162min0
varnishcache-logo-1024x253.png

Varnish Logo

Поставяли ли сте някога нещо във вашия блог и читатели да го публикуват туитове няколко пъти, докато популярността на написаното от вас нараства и стотици посетители влизат наведнъж, а накрая да се разочаровате, защото хората продължават да оплакват, че не могат да достигнат до вашия уебсайт и всъщност туитват, че вашият сайт е недостъпен и се появява грешка при връзката? Ако е така, не сте единственият блогър или собственик на сайт, който често се обезкуражава когато сайтът му стане нестабилен след като бъде посетен от стотици читатели.

Възможно е също да има случай когато известен човек туитне за продукта, който промотирате на своя уебсайт, и така посредствено хиляди хора започнат да посещават вашия сайт, само за да се окаже домейнът да не отговаря и да започне тайм-аут. Въпреки че постоянно се извинявате в Twitter за случилото се, хората губят интерес и продължават да си тръгват, пречейки ви да се възползвате от краткия момент на слава.

Тези сценарии са често срещани, и ако сте ги изпитали, не сте единствени. За щастие можете да използвате Varnish уеб ускорител за да предотвратите подобни ситуации на вашия сайт. Ето как.Here is how.

Varnish уеб ускорител ще сервира исканата страница и активи от паметта. Всички останали аспекти, включително Apache, MySQL и PHP, ще останат непроменени. Web ускорителят на Varnish ще прехвърли задачата към Apache само ако браузърът поиска нещо което още е кеширано. Това означава, че Apache ще изпълни задачата само веднъж, което ви позволява да конфигурирате повече от един бекенд.

Научете повече в нашата статия: What is a Varnish Cache Server?

Инсталирайте Varnish уеб ускорител. Инструкцията за инсталиране е сравнително проста и обикновено се намира в документацията на програмата, така че не е нужно да търсите по интернет начин за бърза инсталация. Можете да следвате инструкциите за Debian и да използвате Debian Wheezy като root. След като инсталирате Varnish, ще получите терминален ред, който ще сигнализира за успешна инсталация.

Пре-конфигурирайте Apache. След инсталирането на уеб Varnish , можете да започнете да пренастройвате Apache. За да промените порта, на който Apache е изписан като root, отворете /etc/apache2/ports.conf и потърсете следните редове:

NameVirtualHost *:80
Listen 80

Трябва да промените тези редове на:

NameVirtualHost *:8080
Listen 8080

Когато приключите, запазете промените и потърсете реда „“ и го заменете с „“.

Конфигурирайте Varnish web server. След като сте променили Apache, сега трябва да конфигурирате Varnish чрез /etc/default/varnish и DAEMON_OPTS да изглеждат така:

DAEMON_OPTS=“-a :80
-T localhost:1234
-f /etc/varnish/default.vcl
-S /etc/varnish/secret
-s malloc,256m“

След като сте ги променили, отворете /etc/varnish/default.vcl за да се уверите, че дефолтният бекенд е настроен на порт 8080. След това рестартирайте програмата.

Почистете кеша. Сега ще трябва да почистите кеша за промените да влязат в сила. Обикновено хората намират за объркващо че след като Varnish web cache е инсталиран и конфигуриран, ефектите не са видими. За да видите промените, напишете в командния ред „varnishadm „ban.url.““ за изчистване на кеша. След това успешно сте инсталирали Varnish и сте готови за работа!

Сега може да се чудите какво още може да направите с Varnish. Повечето хора вероятно искат да научат повече за Varnish за да могат да го променят когато пожелаят. Използването на изброените по-горе стъпки за ре конфигурация на сайта обикновено върши работа за обслужване на основни страници и активи от кеша след като са заредени в паметта. Има обаче някои елементи на вашия сайт които може да не бъдат кеширани от Varnish поради това че не са конфигурирани за това. Един от тези елементи е cookies, и стъпките за това как да кеширате и cookies са различни от горните.

За да направите това, нека предположим че администраторската зона е разположена на /admin. Трябва да редактирате /etc/varnish/default.vcl и да добавите:

sub vcl_recv {
if ( !( req.url ~ ^/admin/) ) {
unset req.http.Cookie;
}
}

Това основно ще почисти cookies. Въпреки това има някои cookies които са важни и може да не искате да ги премахвате. За по-конкретно как Varnish анализира и кешира cookies, можете да добавите:

sub vcl_recv {

За щастие можете да използвате Varnish уеб ускорител за да предотвратите тези видове неща да се случват на вашия сайт.

// Remove has_js and Google Analytics __* cookies.
set req.http.Cookie = regsuball(req.http.Cookie, „(^|;s*)(_[_a-z]+|has_js)=[^;]*“, „“);
// Remove a „;“ prefix, if present.
set req.http.Cookie = regsub(req.http.Cookie, „^;s*“, „“);
}

За по-подробно обяснение, можете да намерите и раздел за cookies в документацията на Varnish.

Banko Stoyanov

This blogpost is written by Banko Stoyanov. Stoyanov is a Marketing manager at CooliceHost. Stoyanov holds an MBA in Marketing strategy and Business developing. He's passionate about data analysis, consumer behavior, cloud technology, and marketing. He is a lifelong learner who regularly keeps himself updated with the latest technologies and industry advancements. In his free time, he explores coffee scene and stays active through running and fitness. Find him on Linkedin and Facebook.


Оставете отговор

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са маркирани с *


Copyright © 2026 – CooliceHost.com – Всички права запазени.