CentOS7-de Apache guruň

Resmi salgylanma

Resmi web sahypasy Haryt resminamalary HTTPS Gzip

Gurnama ýerine ýetiriň

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

Sazlama faýlyny üýtgediň

Gurmak gutaransoň, konfigurasiýa faýlyna käbir üýtgetmeler girizmeli. Aýratyn üýtgetme mazmuny adatça öz içine alýar: bagly IP we port, gzip gysyş geçirişi, yzygiderli birikmeleriň sany we SSL. Geliň, aşakda birin-birin düşündiriň.

Baglanan IP we porty üýtgediň

Apache diňleýän adaty IP we port 0.0.0.0:80. Gözegçilik edilýän IP we porty üýtgetmeli bolsa, gönüden-göni üýtgedip bileris. Birnäçe porty baglamaly bolsa, goşup bileris. Aşakdaky mysalda 80 we 443 portlary baglaýarys. Port 443, HTTPS üçin deslapky port belgisi.

            Listen 80
Listen 443 https
        

Gzip geçirişini açyň

Kompýuterimiziň CPU öndürijiligi birneme ýokary bolany üçin, adatça set zolagynda bökdençlik peýda bolar, şonuň üçin gzip gysyş geçirişini açyp bileris. 9 derejeli gysyş bar, serwerimiziň işine görä saýlap bileris we iň amatly derejäni tapyp bileris. Aşakdaky mysalda ony 1-nji derejä goýduk. Gysylan faýl görnüşleri: html, xml, php, css, js, zerur bolanda gysylan faýl görnüşlerini hem goşup bileris.

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

KeepAlive guruň

“KeepAlive” -yň wezipesi müşderini we serweri belli bir wagta birikdirmekdir. Web sahypasyny açanymyzda, köplenç esasy mazmuny, js, css we suratlary ýüklemeli bolýarys. Her çeşme aýratyn HTTP haýyşyny başlamaly bolansoň, TCP / IP baglanyşygy döretmek üçin her haýyş üçin zerur wagty azaltmak üçin KeepAlive-a mümkinçilik berýäris. Emma “KeepAlive” -iň hem kemçilikleri bar, bu serweriň IO çeşmeleriniň tutulmagyna sebäp bolar, şonuň üçin “KeepAlive” -ni hakyky ýagdaýa görä işletmelidigini saýlamaly. “KeepAlive” açyk bolsa, IO serweriniň uzak wagtlap işlemezligi üçin amatly wagt bellemeli. Aşakdaky mysalda KeepAlive-yň birnäçe esasy sazlamalary bar.

            KeepAlive On
MaxKeepAliveRequests 400
KeepAliveTimeout 5
        

Bir wagtyň sanyny düzüň

Bir wagtyň özünde laýyk gelýän konfigurasiýa serweriň geçişini ep-esli gowulaşdyryp biler. Adatça Apache mpm_prefork re iniminde işleýär. Birnäçe esasy parametrleri ýerlikli düzmeli. Üns bermeli zadymyz, baglanyşyklaryň iň köp mukdary gaty az bolmaly däldir, gaty az bolsa, ylalaşyk köp bolanda köp ulanyjy islegleriniň ret edilmegine sebäp bolar. Bellenen ýerlikli baha serweriň protsessoryna we ýadyna salgylanmalydyr. Resurslar ýeterlik bolsa, mümkin boldugyça uly bolmaly, ýöne gaty uly goýsak, serwer çeşmeleri tükeneler we Apache hem ýykylar.

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

SSL sazlaň

Häzirki wagtda web sahypalarynyň köpüsinde HTTPS ygtybarly birikmeleri goldamak üçin SSL mümkinçiligi bar. HTTPS-iň artykmaçlygy, geçiriş döwründe mazmunyň şifrlenmegidir, şonuň üçin beýlekileriň saklamagy sebäpli maglumatlaryň syzmagy barada alada etmegiň zerurlygy ýok. SSL-i açmazdan ozal şahadatnama üçin ýüz tutmalydyrys. Şahadatnamany alanymyzdan soň SSL sazlamalaryny tamamlamak üçin aşakdaky konfigurasiýa serediň.

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