Sådan fremskynde Apache med lak HTTP cache på Ubuntu 18.04 LTS
Varnish er en fuldmægtig server fokuseret på HTTP caching. Det er designet som en HTTP accelerator og kan fungere som en omvendt fuldmagt til din internetserver. Varnish er blevet brugt til højt profilerede og trafikerede hjemmesider, herunder The Guardian og The Times.
i denne vejledning viser vi dig, hvordan du installerer og konfigurerer lak HTTP-acceleratoren som en omvendt fuldmagt til Apache-serveren. Den virkelige Server Apache vil køre under en ikke-standard HTTP-port (kører på port 8080). Og lak vil køre som den omvendte fuldmagt på HTTP-port 80. Til denne vejledning bruger vi Ubuntu 18.04 LTS-serveren.
hvad vi vil gøre
- installer Apache server
- Skift Apache standardport
- installer lak
- Konfigurer lak
- Test opsætningen
forudsætninger
- Ubuntu 18.04 LTS
- root privilegier
Trin 1 – installer Apache-server
for at starte skal du installere Apache-serveren. Som standard er den tilgængelig i Ubuntu-arkivet.
Opdater Ubuntu-arkivet, og installer derefter Apache ved hjælp af apt-kommandoen.
apt update
apt install -y apache2
når installationen er afsluttet, skal du starte Apache-tjenesten og aktivere den til at køre automatisk ved systemstart ved hjælp af følgende systemctl-kommandoer.
systemctl start apache2
systemctl enable apache2
Apache-serveren er installeret.
for at give alle adgang til internetserveren, skal vi tillade HTTP og HTTPS på vores regel. Som standard leveres Ubuntu med en firmapakke med navnet UFV.
Åbn nye SSH -, HTTP-og HTTPS-porte ved hjælp af følgende kommandoer.
ufw allow ssh
ufw allow http
ufw allow https
start nu brandvægstjenesten og gør det muligt at starte automatisk ved systemstart.
ufw enable
skriv ‘y’, og tryk på Enter for at bekræfte.
nye porte til HTTP, HTTPS og SSH er blevet åbnet og er tilgængelige uden for netværket.
hvis du vil teste Apache-serveren, kan du bruge kommandoen netstat og sørge for, at apache kører under port 80.
netstat -plntu
eller du kan bruge følgende curl-kommando.
curl -I hakase-labs.co
du skal få resultatet som vist nedenfor.
Trin 2-Skift Apache standardport
i denne vejledning bruger vi Apache som backend-server, og den kører ikke under standard HTTP-port 80. Apache – serveren kører på port 8080 som backend, og standard HTTP-porten 80 vil blive brugt af ‘lak’.
for at ændre standard apache-porten skal vi redigere Apache-konfigurationens porte.conf ‘og hele den virtuelle værtskonfiguration under mappen’ sites-available’.
gå til Apache-konfigurationsmappen.
cd /etc/apache2
Udskift port ’80’ med ‘8080’ i Apache-konfigurationen ‘porte.conf ‘og alle virtuelle værtsfiler under mappen’ sites-available’. Vi kan gøre det ved at køre følgende sed-kommandoer.
sed -i -e 's/80/8080/g' ports.conf
sed -i -e 's/80/8080/g' sites-available/*
test derefter Apache-konfigurationen, og sørg for, at der ikke er nogen fejl, og genstart derefter Apache-tjenesten.
apachectl configtest
systemctl restart apache2
nu kører Apache under HTTP-port ‘8080’, Kontroller den ved hjælp af kommandoen ‘netstat’ som vist nedenfor.
netstat -plntu
sørg for, at du har resultatet som nedenfor.
så du kan se, at Apache – serveren kører på port ‘8080’.
Trin 3 – Installer lak HTTP Accelerator
i dette trin installerer vi lak fra Ubuntu-depotet. Og til denne vejledning bruger vi lak 5.2.
installer lak ved hjælp af følgende apt-kommando.
apt install -y varnish
når installationen er afsluttet, skal du starte lak og aktivere den automatisk ved systemstart.
systemctl start varnish
systemctl enable varnish
Varnish er installeret på Ubuntu 18.04-systemet.
som standard kører den under porte ‘6081’ til offentlig adresse og ‘6082’ til localhost-adresse. Tjek det ved hjælp af netstat-kommandoen nedenfor.
netstat -plntu
og du får standardlakporten.
Trin 4-Konfigurer lak som en omvendt fuldmagt til Apache
i dette trin konfigurerer vi lak på forsiden af Apache-serveren. Varnish kører under http port 80, og hver anmodning fra klienter vil blive håndteret af den, før den sendes til Apache-serveren, der kører på port 8080.
– Backend Configuration
gå til konfigurationsmappen ‘lak’ og sikkerhedskopier standardfilen ‘standard.vcl’.
cd /etc/varnish/
cp default.vcl default.vcl.aseli
Rediger lakkonfigurationen ‘standard.vcl ‘ ved hjælp af vim editor.
vim default.vcl
Definer konfigurationen ‘backend’ på linje 16. Backend for vores opsætning er Apache, og den kører på port 8080. Så lakkonfigurationen til vores apache-opsætning skal være følgende:
backend default {
.host = "127.0.0.1";
.port = "8080";
}
Gem og afslut.
– Løbelak på Port 80
Dernæst skal vi ændre standardlakporte. Standardportene til lak er ‘ 6081 ‘og’ 6082′, og vi er nødt til at ændre porten til HTTP-porten 80 (kun til offentlig adresse).
Rediger parameterkonfigurationen for lak i mappen ‘/etc/default’.
cd /etc/default/
vim varnish
Rediger linjen ‘DAEMON_OPTS’, skift standardporten ‘6081’ til offentlig adresse med standard HTTP-port ’80’ som vist nedenfor.
DAEMON_OPTS="-a :80 \
-T localhost:6082 \
-f /etc/varnish/default.vcl \
-S /etc/varnish/secret \
-s malloc,256m"
Gem og afslut.
Dernæst skal vi redigere lakservicefilen ‘lak.service’. Gå til mappen’ /lib/systemd/system ‘ og rediger servicefilen ved hjælp af vim.
cd /lib/systemd/system/
vim varnish.service
på linjen ‘Start’ skal du ændre kommandoen lak start som nedenfor.
start=/usr/sbin/varnishd-J unik,bruger=vcache-F-A :80-T localhost:6082-f /etc/lak/standard.vcl – s / etc / lak / secret-s malloc, 256m
Gem og afslut.
Genindlæs systemd-servicekonfigurationen, og genstart derefter lak.
systemctl daemon-reload
systemctl restart varnish
Kontroller nu lak, og sørg for, at den kører på HTTP-porten 80.
netstat -plntu
så lak kører nu under HTTP port 80 som front-end for Apache internetserver, som er på port 8080.
Trin 5 – Test
Test ved hjælp af curl-kommandoen.
curl -I hakase-labs.co
sørg for at få HTTP-overskriften som vist nedenfor.
min testservers URL er http://hakase-labs.co/. Vælg din server-URL her.
og vi får stadig Apache-indhold.
kontroller lakloggen ved hjælp af kommandoen’ varnishncsa’.
varnishncsa
og vi får log bare fra Apache access log.
Varnish installation og konfiguration til Apache-serveren er afsluttet.