Instalirajte Apache na CentOS7
Službena referenca
Službena web stranica Dokumentacija proizvoda HTTPS GzipIzvršite instalaciju
yum -y install libmcrypt libmcrypt-devel mcrypt mhash
yum -y install httpd
Izmijenite konfiguracijsku datoteku
Nakon završetka instalacije, moramo izvršiti neke izmjene u konfiguracijskoj datoteci. Specifični sadržaj modifikacije obično uključuje: vezani IP i port, gzip prijenos kompresije, broj istodobnih veza i SSL. Objasnimo ih jedan po jedan u nastavku.
Izmijenite povezani IP i port
Zadani IP i port koji Apache sluša su 0.0.0.0:80. Ako trebamo izmijeniti nadziranu IP adresu i port, možemo je izravno izmijeniti. Ako moramo povezati više portova, možemo ih i dodati. U sljedećem primjeru vežemo portove 80 i 443. Port 443 je zadani broj porta za HTTPS.
Listen 80
Listen 443 https
Otvoreni gzip prenos
Budući da su performanse CPU-a našeg računara relativno visoke, obično će se usko grlo pojaviti u mrežnoj propusnosti, pa možemo odabrati da uključimo gzip kompresijski prenos. Postoji 9 nivoa kompresije. Možemo odabrati prema performansama našeg servera i pronaći najprikladniji nivo. U donjem primjeru postavili smo ga na nivo 1. Tipovi komprimiranih datoteka su: html, xml, php, css, js, po potrebi možemo dodati i komprimirane tipove datoteka.
<IfModule mod_deflate.c>
DeflateCompressionLevel 1
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/x-javascript application/x-httpd-php
AddOutputFilter DEFLATE js css
</IfModule>
Postavite KeepAlive
Funkcija KeepAlive je da održi klijenta i poslužitelj povezani neko vrijeme. Kada otvorimo web stranicu, obično moramo učitati glavni sadržaj, js, css i slike. Budući da svaki resurs treba pokrenuti zasebni HTTP zahtjev, omogućujemo KeepAlive da smanji vrijeme potrebno za svaki zahtjev za uspostavljanje TCP / IP veze. Ali KeepAlive ima i nedostataka, što će dovesti do zauzimanja IO resursa servera, pa moramo odabrati hoćemo li omogućiti KeepAlive prema stvarnoj situaciji. Ako je KeepAlive omogućen, također mu moramo postaviti razumno vremensko ograničenje kako bismo izbjegli da IO poslužitelja bude dugo zauzet. Sljedeći primjer sadrži nekoliko glavnih postavki KeepAlive.
KeepAlive On
MaxKeepAliveRequests 400
KeepAliveTimeout 5
Konfigurirajte broj istovremenih
Razumna konfiguracija broja istovremenih može uvelike poboljšati protok poslužitelja. Obično naš Apache radi u mpm_prefork modu. Moramo razumno konfigurirati nekoliko ključnih parametara. Ono na što moramo obratiti pažnju je da maksimalan broj veza ne smije biti premalen, premalen će odbiti veliki broj zahtjeva korisnika kada je paralelnost velika. Razumna vrijednost koju postavimo trebala bi se odnositi na CPU i memoriju poslužitelja. Sve dok su resursi dovoljni, trebali bismo je postaviti što veću, ali ako je postavimo preveliku, resursi poslužitelja će se iscrpiti, a Apache će se srušiti.
<IfModule mpm_prefork_module>
StartServers 10
MinSpareServers 25
MaxSpareServers 50
ServerLimit 1500
MaxClients 1000
MaxRequestsPerChild 3000
</IfModule>
Konfigurirajte SSL
Većina web lokacija sada ima omogućen SSL za podršku HTTPS sigurnim vezama. Prednost HTTPS-a je u tome što je sadržaj tijekom prijenosa šifriran, tako da ne treba brinuti o curenju informacija zbog presretanja drugih. Prije omogućavanja SSL-a, prvo se moramo prijaviti za certifikat. Nakon što dobijemo certifikat, pogledajte sljedeću konfiguraciju da biste dovršili SSL postavke.
<VirtualHost *:443>
ServerAdmin www.test.com
ServerName www.testl.com
DocumentRoot /var/www/test
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM
SSLHonorCipherOrder on
SSLCertificateFile /etc/httpd/conf/cert/public.crt
SSLCertificateKeyFile /etc/httpd/conf/cert/1533528967430.key
SSLCertificateChainFile /etc/httpd/conf/cert/chain.crt
AllowEncodedSlashes on
<Directory "/var/www/test.com">
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>