დააინსტალირეთ Apache CentOS7– ზე
ოფიციალური მითითება
Ოფიციალური ვებ - გვერდი პროდუქტის დოკუმენტაცია HTTPS Gzipშეასრულეთ ინსტალაცია
yum -y install libmcrypt libmcrypt-devel mcrypt mhash
yum -y install httpd
შეცვალეთ კონფიგურაციის ფაილი
ინსტალაციის დასრულების შემდეგ, ჩვენ უნდა შევიტანოთ ცვლილებები კონფიგურაციის ფაილში. სპეციფიკური მოდიფიკაციის შინაარსი, როგორც წესი, მოიცავს: შეკრულ IP და პორტს, gzip კომპრესიის გადაცემას, ერთდროული კავშირების რაოდენობას და SSL. მოდით განვმარტოთ ისინი სათითაოდ ქვემოთ.
შეცვალეთ შეკრული IP და პორტი
ნაგულისხმევი IP და პორტი, რომელსაც Apache უსმენს არის 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– ის ფუნქციაა კლიენტისა და სერვერის დაკავშირება გარკვეული პერიოდის განმავლობაში. ვებ – გვერდის გახსნისას, ძირითადად, უნდა ჩატვირთოს ძირითადი შინაარსი, js, css და ნახატები. მას შემდეგ, რაც თითოეულმა რესურსმა უნდა წამოიწყოს ცალკეული HTTP მოთხოვნა, ჩვენ ვაძლევთ საშუალებას KeepAlive შეამციროს თითოეული მოთხოვნისთვის საჭირო დრო TCP / IP ბმულის დასადგენად. KeepAlive– ს აქვს ნაკლოვანებებიც. ეს გამოიწვევს სერვერის IO რესურსების დაკავებას, ამიტომ ჩვენ უნდა ავირჩიოთ, ჩართეთ თუ არა KeepAlive ფაქტობრივი მდგომარეობის შესაბამისად. თუ KeepAlive ჩართულია, ჩვენ მას ასევე უნდა დავადგინოთ გონივრული ვადა, რათა თავიდან იქნას აცილებული სერვერის IO დიდი ხნის განმავლობაში დაკავებული. შემდეგი მაგალითი შეიცავს KeepAlive- ის რამდენიმე მთავარ პარამეტრს.
KeepAlive On
MaxKeepAliveRequests 400
KeepAliveTimeout 5
კონფიგურაციის რაოდენობის კონფიგურაცია
თანმიმდევრული რაოდენობის გონივრულ კონფიგურაციას შეუძლია მნიშვნელოვნად გააუმჯობესოს სერვერის გამტარუნარიანობა. როგორც წესი, ჩვენი Apache მუშაობს mpm_prefork რეჟიმში. ჩვენ გონივრულად უნდა ჩამოვაყალიბოთ რამდენიმე ძირითადი პარამეტრი. რასაც ყურადღება უნდა მივაქციოთ არის ის, რომ კავშირის მაქსიმალური რაოდენობა არ უნდა იყოს ძალიან მცირე, ძალიან მცირე გამოიწვევს მომხმარებელთა დიდი რაოდენობის მოთხოვნების უარყოფას, როდესაც კონკურენცია მაღალია. ჩვენს მიერ მითითებული გონივრული მნიშვნელობა უნდა ეხებოდეს სერვერის CPU- ს და მეხსიერებას. სანამ რესურსები საკმარისია, ჩვენ მაქსიმალურად უნდა დავაყენოთ ის, მაგრამ თუ ძალიან დიდს დავდებთ, სერვერის რესურსები ამოიწურება და Apache ასევე ჩამოიშლება.
<IfModule mpm_prefork_module>
StartServers 10
MinSpareServers 25
MaxSpareServers 50
ServerLimit 1500
MaxClients 1000
MaxRequestsPerChild 3000
</IfModule>
კონფიგურაცია SSL
ახლა ვებსაიტების უმეტესობას აქვს SSL ჩართული HTTPS უსაფრთხო კავშირების მხარდასაჭერად. HTTPS– ის უპირატესობა ის არის, რომ შინაარსის კოდირება ხდება, ამიტომ ინფორმაციის გაჟონვის საჭიროება არ არის სხვების მიერ დაკვირვების გამო. SSL- ის ჩართვამდე ჯერ უნდა მოვითხოვოთ სერთიფიკატი. სერთიფიკატის მიღების შემდეგ, SSL პარამეტრების შესასრულებლად, მიმართეთ შემდეგ კონფიგურაციას.
<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>