CentOS7 හි Apache ස්ථාපනය කරන්න

නිල යොමුව

නිල වෙබ් අඩවිය නිෂ්පාදන ප්‍රලේඛනය HTTPS Gzip

ස්ථාපනය සිදු කරන්න

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

වින්‍යාස ගොනුව වෙනස් කරන්න

ස්ථාපනය අවසන් වූ පසු, අපි වින්‍යාස ගොනුවට යම් වෙනස් කිරීම් කළ යුතුය. නිශ්චිත වෙනස් කිරීමේ අන්තර්ගතයට සාමාන්‍යයෙන් ඇතුළත් වන්නේ: බැඳී ඇති IP සහ වරාය, gzip සම්පීඩන සම්ප්‍රේෂණය, සමගාමී සම්බන්ධතා ගණන සහ SSL. පහත ඒවා එකින් එක පැහැදිලි කරමු.

බැඳී ඇති IP සහ වරාය වෙනස් කරන්න

Apache සවන් දෙන පෙරනිමි IP සහ වරාය 0.0.0.0:80 වේ. අපට අධීක්ෂණය කරන ලද IP සහ වරාය වෙනස් කිරීමට අවශ්‍ය නම්, අපට එය කෙලින්ම වෙනස් කළ හැකිය. අපට බහු වරායන් බැඳීමට අවශ්‍ය නම්, අපට ඒවා එකතු කළ හැකිය. පහත දැක්වෙන උදාහරණයේ දී, අපි 80 සහ 443 වරායන් බැඳ තබමු. වරාය 443 යනු HTTPS සඳහා පෙරනිමි වරාය අංකයයි.

            Listen 80
Listen 443 https
        

විවෘත gzip සම්ප්‍රේෂණය

අපගේ පරිගණකයේ CPU ක්‍රියාකාරීත්වය සාපේක්ෂව ඉහළ මට්ටමක පවතින නිසා, සාමාන්‍යයෙන් ජාල කලාප පළලෙහි ඇති බාධකය දිස්වනු ඇත, එබැවින් අපට gzip සම්පීඩන සම්ප්‍රේෂණය සක්‍රිය කිරීමට තෝරා ගත හැකිය. සම්පීඩන මට්ටම් 9 ක් ඇත.අපේ සේවාදායකයේ ක්‍රියාකාරිත්වය අනුව තෝරාගෙන වඩාත් සුදුසු මට්ටම සොයාගත හැකිය. පහත උදාහරණයේ දී, අපි එය 1 මට්ටමට සකස් කරමු. සම්පීඩිත ගොනු වර්ග: html, xml, php, css, js, අපට අවශ්‍ය පරිදි සම්පීඩිත ගොනු වර්ගද එකතු කළ හැකිය.

            <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 සකසන්න

KeepAlive හි කාර්යය වන්නේ සේවාදායකයා සහ සේවාදායකයා යම් කාලයක් සඳහා සම්බන්ධ කර තබා ගැනීමයි. අපි වෙබ් පිටුවක් විවෘත කරන විට, සාමාන්‍යයෙන් අපට ප්‍රධාන අන්තර්ගතයන්, ජේඑස්, සීඑස්එස් සහ පින්තූර පූරණය කළ යුතුය.එම සම්පතට වෙනම එච්ටීටීපී ඉල්ලීමක් ආරම්භ කිරීමට අවශ්‍ය බැවින්, ටීසීපී / අයිපී සම්බන්ධතාවයක් ඇති කිරීම සඳහා සෑම ඉල්ලීමකටම ගතවන කාලය අඩු කිරීමට අපි KeepAlive සක්‍රීය කරමු. KeepAlive හි ද අඩුපාඩු තිබේ.එය සේවාදායකයේ IO සම්පත් අත්පත් කර ගැනීමට හේතු වනු ඇත, එබැවින් සැබෑ තත්වයට අනුව KeepAlive සක්‍රීය කළ යුතුද යන්න අප විසින් තෝරා ගත යුතුය. KeepAlive සක්‍රීය කර ඇත්නම්, සේවාදායක IO දීර් time කාලයක් තිස්සේ රැඳී සිටීම වළක්වා ගැනීම සඳහා අපි ඒ සඳහා සාධාරණ කල් ඉකුත් වීමක් නියම කළ යුතුය. පහත උදාහරණයේ KeepAlive හි ප්‍රධාන සැකසුම් කිහිපයක් අඩංගු වේ.

            KeepAlive On
MaxKeepAliveRequests 400
KeepAliveTimeout 5
        

සමගාමී ගණන වින්‍යාස කරන්න

සමගාමී සංඛ්‍යාවේ සාධාරණ වින්‍යාසයක් මඟින් සේවාදායකයේ ප්‍රති put ලය බෙහෙවින් වැඩි දියුණු කළ හැකිය. සාමාන්‍යයෙන් අපගේ Apache වැඩ කරන්නේ mpm_prefork ප්‍රකාරයේදී ය. අපට ප්‍රධාන පරාමිතීන් කිහිපයක් සාධාරණව වින්‍යාස කිරීමට අවශ්‍යය. අප අවධානය යොමු කළ යුතු දෙය නම්, උපරිම සම්බන්ධතා සංඛ්‍යාව ඉතා කුඩා නොවිය යුතු අතර, ඉතා කුඩා නිසා සමගාමී මුදල් ඉහළ මට්ටමක පවතින විට පරිශීලක ඉල්ලීම් විශාල සංඛ්‍යාවක් ප්‍රතික්ෂේප වීමට ඉඩ ඇත. අප විසින් සකසා ඇති සාධාරණ අගය සේවාදායකයේ CPU සහ මතකය වෙත යොමු විය යුතුය. සම්පත් ප්‍රමාණවත් වන තාක් කල්, අපි එය හැකි තරම් විශාල ලෙස සකසා ගත යුතුය, නමුත් අපි එය විශාල ලෙස සකසන්නේ නම්, සේවාදායක සම්පත් අවසන් වී අපාචේ ද බිඳ වැටෙනු ඇත.

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

SSL වින්‍යාස කරන්න

බොහෝ වෙබ් අඩවි දැන් HTTPS ආරක්ෂිත සම්බන්ධතා සඳහා සහය දැක්වීමට SSL සක්‍රීය කර ඇත. HTTPS හි ඇති වාසිය නම් සම්ප්‍රේෂණය අතරතුර අන්තර්ගතය සංකේතනය කර තිබීමයි, එබැවින් අන් අයගේ ඇඟිලි ගැසීම් හේතුවෙන් තොරතුරු කාන්දු වීම ගැන කරදර විය යුතු නැත. එස්එස්එල් සක්‍රීය කිරීමට පෙර, අපි පළමුව සහතිකයක් සඳහා ඉල්ලුම් කළ යුතුය.අපි සහතිකය ලබාගත් පසු, එස්එස්එල් සැකසුම් සම්පූර්ණ කිරීම සඳහා පහත සඳහන් වින්‍යාසය වෙත යොමු වන්න.

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