Asenna Apache CentOS7: een

Virallinen viite

Virallinen nettisivu Tuote-asiakirjat HTTPS Gzip

Suorita asennus

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

Muokkaa määritystiedostoa

Kun asennus on valmis, meidän on tehtävä joitain muutoksia kokoonpanotiedostoon. Erityinen muutossisältö sisältää yleensä: sidotun IP: n ja portin, gzip-pakkauslähetyksen, samanaikaisten yhteyksien määrän ja SSL: n. Selitetään ne yksitellen alla.

Muokkaa sidottua IP-osoitetta ja porttia

Oletus-IP ja portti, jota Apache kuuntelee, on 0.0.0.0:80. Jos meidän on muokattava valvottua IP-osoitetta ja porttia, voimme muokata sitä suoraan. Jos joudumme sitomaan useita portteja, voimme myös lisätä ne. Seuraavassa esimerkissä sidomme portit 80 ja 443. Portti 443 on oletusporttinumero HTTPS: lle.

            Listen 80
Listen 443 https
        

Avaa gzip-lähetys

Koska tietokoneemme suorittimen suorituskyky on suhteellisen korkea, pullonkaula näkyy yleensä verkon kaistanleveydessä, joten voimme ottaa käyttöön gzip-pakkauslähetyksen. Pakkaustasoja on 9. Voimme valita palvelimemme suorituskyvyn mukaan ja löytää sopivimman tason. Seuraavassa esimerkissä asetamme sen tasolle 1. Pakatut tiedostotyypit ovat: html, xml, php, css, js, voimme myös lisätä pakattuja tiedostotyyppejä tarpeen mukaan.

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

Määritä KeepAlive

KeepAliven tehtävänä on pitää asiakas ja palvelin yhteydessä tietyn ajan. Kun avaat verkkosivun, meidän on yleensä ladattava pääsisältö, js, css ja kuvat. Koska jokaisen resurssin on aloitettava erillinen HTTP-pyyntö, käytämme KeepAlive-ohjelmaa vähentämään kutakin pyyntöä varten tarvittavaa aikaa TCP / IP-linkin luomiseen. Mutta KeepAlivella on myös haittoja: se aiheuttaa palvelimen IO-resurssien käyttämisen, joten meidän on valittava, otetaanko KeepAlive käyttöön todellisen tilanteen mukaan. Jos KeepAlive on käytössä, meidän on myös asetettava sille kohtuullinen aikakatkaisu, jotta palvelimen IO ei ole käytössä pitkään aikaan. Seuraava esimerkki sisältää useita KeepAliven pääasetuksia.

            KeepAlive On
MaxKeepAliveRequests 400
KeepAliveTimeout 5
        

Määritä samanaikaisten lukumäärä

Kohtuullinen samanaikaisten määritys voi parantaa huomattavasti palvelimen suorituskykyä. Yleensä Apacheemme toimii mpm_prefork-tilassa. Meidän on määritettävä kohtuullisesti useita avainparametreja. Meidän on kiinnitettävä huomiota siihen, että yhteyksien enimmäismäärä ei saisi olla liian pieni, liian pieni aiheuttaa suuren määrän käyttäjäpyyntöjä hylätyksi, kun samanaikaisuus on korkea. Asettamamme kohtuullisen arvon tulisi viitata palvelimen suorittimeen ja muistiin. Niin kauan kuin resurssit ovat riittävät, meidän on asetettava se mahdollisimman suureksi, mutta jos asetamme sen liian suureksi, palvelimen resurssit kuluvat loppuun ja myös Apache kaatuu.

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

Määritä SSL

Useimmilla verkkosivustoilla on nyt SSL-tuki HTTPS-suojattujen yhteyksien tukemiseksi. HTTPS: n etuna on, että sisältö lähetyksen aikana on salattu, joten ei tarvitse huolehtia muiden vuotamasta tietovuodosta. Ennen kuin otamme SSL: n käyttöön, meidän on ensin haettava sertifikaattia. Kun sertifikaatti on saatu, katso seuraavasta kokoonpanosta SSL-asetukset.

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