Instaloni Apache në CentOS7
Referencë zyrtare
Uebfaqe zyrtare Dokumentacioni i Produktit HTTPS GzipKryeni instalimin
yum -y install libmcrypt libmcrypt-devel mcrypt mhash
yum -y install httpd
Modifikoni skedarin e konfigurimit
Pas përfundimit të instalimit, duhet të bëjmë disa modifikime në skedarin e konfigurimit. Përmbajtja specifike e modifikimit zakonisht përfshin: IP dhe port të lidhur, transmetimin e kompresimit gzip, numrin e lidhjeve të njëkohshme dhe SSL. Le t'i shpjegojmë ato një nga një më poshtë.
Modifikoni IP-në dhe portën e lidhur
IP dhe porti i paracaktuar që Apache dëgjon është 0.0.0.0:80. Nëse duhet të modifikojmë IP dhe portin e monitoruar, mund ta modifikojmë atë drejtpërdrejt. Nëse duhet të lidhim shumë porte, mund t'i shtojmë edhe ato. Në shembullin vijues, ne lidhim portet 80 dhe 443. Porti 443 është numri i parazgjedhur i portës për HTTPS.
Listen 80
Listen 443 https
Transmetimi i hapur gzip
Meqenëse performanca e CPU-së së kompjuterit tonë është relativisht e lartë, zakonisht ngushtësia do të shfaqet në gjerësinë e rrjetit, kështu që ne mund të zgjedhim të aktivizojmë transmetimin e kompresimit gzip. Ekzistojnë 9 nivele të ngjeshjes. Ne mund të zgjedhim sipas performancës së serverit tonë dhe të gjejmë nivelin më të përshtatshëm. Në shembullin më poshtë, ne e vendosim atë në nivelin 1. Llojet e skedarëve të kompresuar janë: html, xml, php, css, js, ne gjithashtu mund të shtojmë lloje të skedarëve të kompresuar sipas nevojës.
<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>
Konfiguroni KeepAlive
Funksioni i KeepAlive është të mbajë të lidhur klientin dhe serverin për një periudhë kohe. Kur hapim një faqe në internet, zakonisht duhet të ngarkojmë përmbajtjen kryesore, js, css dhe fotografi. Meqenëse secili burim duhet të fillojë një kërkesë të veçantë HTTP, ne mundësojmë KeepAlive të zvogëlojë kohën e nevojshme për çdo kërkesë për të vendosur një lidhje TCP / IP. Por KeepAlive gjithashtu ka të meta. Kjo do të bëjë që burimet e IO të serverit të zënë, kështu që ne duhet të zgjedhim nëse do të mundësojmë KeepAlive në përputhje me situatën aktuale. Nëse KeepAlive është i aktivizuar, ne gjithashtu duhet të vendosim një afat të arsyeshëm për të shmangur zënien e IO të serverit për një kohë të gjatë. Shembulli i mëposhtëm përmban disa cilësime kryesore të KeepAlive.
KeepAlive On
MaxKeepAliveRequests 400
KeepAliveTimeout 5
Konfiguroni numrin e njëkohshëm
Një konfigurim i arsyeshëm i numrit të njëkohshëm mund të përmirësojë shumë xhiros e serverit. Zakonisht Apache ynë punon në modalitetin mpm_prefork. Ne duhet të konfigurojmë në mënyrë të arsyeshme disa parametra kryesorë. Ajo që duhet t'i kushtojmë vëmendje është se numri maksimal i lidhjeve nuk duhet të jetë shumë i vogël, shumë i vogël do të bëjë që një numër i madh i kërkesave të përdoruesve të refuzohen kur konkurenca është e lartë. Vlera e arsyeshme që vendosim duhet t'i referohet CPU-së dhe kujtesës së serverit. Për sa kohë që burimet janë të mjaftueshme, duhet ta vendosim sa më të mëdha, por nëse e vendosim shumë të mëdha, burimet e serverit do të shterojnë dhe Apache gjithashtu do të prishet.
<IfModule mpm_prefork_module>
StartServers 10
MinSpareServers 25
MaxSpareServers 50
ServerLimit 1500
MaxClients 1000
MaxRequestsPerChild 3000
</IfModule>
Konfiguroni SSL
Shumica e faqeve të internetit tani kanë të aktivizuar SSL për të mbështetur lidhje të sigurta HTTPS. Avantazhi i HTTPS është se përmbajtja gjatë transmetimit është e koduar, kështu që nuk ka nevojë të shqetësoheni për rrjedhjet e informacionit për shkak të përgjimit nga të tjerët. Para se të mundësojmë SSL, së pari duhet të aplikojmë për një certifikatë. Pasi të marrim certifikatën, referojuni konfigurimit të mëposhtëm për të përfunduar cilësimet e 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>