Installige Apache CentOS7-le

Ametlik viide

Ametlik veebilehekülg Toote dokumentatsioon HTTPS Gzip

Tehke installimine

            yum -y install libmcrypt libmcrypt-devel mcrypt mhash
yum -y install httpd
        

Konfiguratsioonifaili muutmine

Pärast installi lõppu peame konfiguratsioonifailis mõned muudatused tegema. Konkreetne modifitseerimissisu sisaldab tavaliselt: seotud IP-d ja porti, gzip-pakkimist, samaaegsete ühenduste arvu ja SSL-i. Selgitame neid ükshaaval allpool.

Muutke seotud IP-d ja porti

Vaikimisi IP ja port, mida Apache kuulab, on 0.0.0.0:80. Kui peame jälgitavat IP-d ja porti muutma, saame seda otse muuta. Kui peame siduma mitu pordi, võime ka need lisada. Järgmises näites seome pordid 80 ja 443. Port 443 on HTTPS-i vaikepordi number.

            Listen 80
Listen 443 https
        

Avage gzip-edastus

Kuna meie arvuti protsessori jõudlus on suhteliselt kõrge, ilmneb tavaliselt kitsaskoht võrgu ribalaiuses, nii et saame valida gzip-tihenduse sisselülitamise. Tihendustasemeid on 9. Saame valida vastavalt oma serveri jõudlusele ja leida sobivaima taseme. Allpool toodud näites seadsime selle tasemele 1. Pakitud failitüübid on: html, xml, php, css, js, vajadusel võime lisada ka tihendatud failitüüpe.

            <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>
        

Seadistage KeepAlive

KeepAlive'i ülesanne on hoida klient ja server teatud aja jooksul ühenduses. Veebilehe avamisel peame tavaliselt laadima põhisisu, js, css ja pildid. Kuna iga ressurss peab algatama eraldi HTTP-päringu, lubame KeepAlive'il vähendada TCP / IP-lingi loomiseks iga päringu jaoks vajalikku aega. Kuid KeepAlive'il on ka puudusi. See põhjustab serveri IO-ressursside hõivamise, seega peame valima, kas KeepAlive lubada vastavalt tegelikule olukorrale. Kui KeepAlive on lubatud, peame selle jaoks määrama ka mõistliku ajalõpu, et vältida serveri IO pikka aega hõivamist. Järgmine näide sisaldab mitmeid KeepAlive'i põhiseadeid.

            KeepAlive On
MaxKeepAliveRequests 400
KeepAliveTimeout 5
        

Konfigureerige samaaegse arvu

Samaaegse arvu mõistlik konfiguratsioon võib serveri läbilaskevõimet oluliselt parandada. Tavaliselt töötab meie Apache režiimis mpm_prefork. Peame mõistlikult konfigureerima mitu põhiparameetrit. Peame tähelepanu pöörama sellele, et maksimaalne ühenduste arv ei tohiks olla liiga väike, liiga väike põhjustab suure hulga kasutajate taotluste tagasilükkamise, kui samaaegsus on suur. Meie määratud mõistlik väärtus peaks viitama serveri protsessorile ja mälule. Niikaua kui ressursse on piisavalt, peaksime selle seadma nii suureks kui võimalik, kuid liiga suure määramise korral on serveri ressursid ammendatud ja ka Apache jookseb kokku.

            <IfModule mpm_prefork_module>
    StartServers         10
    MinSpareServers      25
    MaxSpareServers      50
    ServerLimit          1500
    MaxClients           1000
    MaxRequestsPerChild  3000
</IfModule>
        

Konfigureerige SSL

Enamikul veebisaitidel on nüüd SSL lubatud HTTPS-i turvaliste ühenduste toetamiseks. HTTPS-i eeliseks on see, et sisu edastamise ajal on krüpteeritud, mistõttu pole vaja muretseda teiste lekkimise tõttu infolekete pärast. Enne SSL-i lubamist peame kõigepealt taotlema sertifikaati. Pärast sertifikaadi saamist vaadake SSL-i seadete lõpuleviimiseks järgmist konfiguratsiooni.

            <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>