Apache-ni CentOS7-ga o'rnating
Rasmiy ma'lumotnoma
Rasmiy veb-sayt Mahsulot hujjatlari HTTPS GzipO'rnatishni amalga oshiring
yum -y install libmcrypt libmcrypt-devel mcrypt mhash
yum -y install httpd
Konfiguratsiya faylini o'zgartiring
O'rnatish tugagandan so'ng, biz konfiguratsiya faylida ba'zi o'zgartirishlar kiritishimiz kerak. Maxsus modifikatsiya tarkibiga quyidagilar kiradi: bog'langan IP va port, gzip siqishni uzatish, bir vaqtda ulanishlar soni va SSL. Quyida ularni birma-bir tushuntirib beramiz.
Bog'langan IP va portni o'zgartiring
Apache tinglaydigan standart IP va port 0.0.0.0:80. Agar biz kuzatiladigan IP va portni o'zgartirishimiz kerak bo'lsa, uni to'g'ridan-to'g'ri o'zgartirishimiz mumkin. Agar biz bir nechta portni bog'lashimiz kerak bo'lsa, ularni qo'shishimiz mumkin. Quyidagi misolda biz 80 va 443 portlarni bog'laymiz. Port 443 - bu HTTPS uchun standart port raqami.
Listen 80
Listen 443 https
Gzip uzatishni oching
Bizning kompyuterimiz protsessorining ishlashi nisbatan yuqori bo'lganligi sababli, odatda darzlik tarmoq o'tkazuvchanligida paydo bo'ladi, shuning uchun biz gzip siqishni uzatishni yoqishimiz mumkin. Siqilishning 9 darajasi mavjud, biz serverimiz ishlashiga qarab tanlay olamiz va eng mos darajani topamiz. Quyidagi misolda biz uni 1 darajaga o'rnatdik. Siqilgan fayl turlari: html, xml, php, css, js, biz kerak bo'lganda siqilgan fayl turlarini ham qo'shishimiz mumkin.
<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-ni sozlang
KeepAlive-ning vazifasi mijoz va serverni bir muddat bog'lanib turishdir. Veb-sahifani ochishda biz odatda asosiy tarkibni, js, css va rasmlarni yuklashimiz kerak, chunki har bir manba alohida HTTP so'rovini boshlashi kerak, biz KeepAlive-ga TCP / IP havolasini o'rnatish uchun har bir so'rov uchun zarur bo'lgan vaqtni qisqartirishga imkon beramiz. Ammo KeepAlive-ning kamchiliklari ham bor, bu serverning IO resurslarini ishg'ol qilishiga olib keladi, shuning uchun biz KeepAlive-ni haqiqiy vaziyatga qarab yoqishni tanlashimiz kerak. Agar KeepAlive yoqilgan bo'lsa, biz IO serverini uzoq vaqt ishg'ol qilmaslik uchun unga o'rtacha vaqtni belgilashimiz kerak. Quyidagi misolda KeepAlive-ning bir nechta asosiy sozlamalari mavjud.
KeepAlive On
MaxKeepAliveRequests 400
KeepAliveTimeout 5
Bir vaqtning o'zida sonini sozlang
Bir vaqtning o'zida mos keladigan konfiguratsiya serverning ishlash qobiliyatini sezilarli darajada yaxshilashi mumkin. Odatda bizning Apache mpm_prefork rejimida ishlaydi. Biz bir nechta asosiy parametrlarni oqilona sozlashimiz kerak. E'tibor qilishimiz kerak bo'lgan narsa shundaki, ulanishlarning maksimal soni juda kichik bo'lmasligi kerak, juda kichikligi hamjihatlik yuqori bo'lganida ko'plab foydalanuvchilar so'rovlarini rad etishga olib keladi. Biz o'rnatgan oqilona qiymat serverning protsessori va xotirasiga murojaat qilishi kerak, agar resurslar etarli bo'lsa, biz uni iloji boricha kattaroq qilib qo'yishimiz kerak, ammo biz uni juda katta qilib qo'ysak, server resurslari tugaydi va Apache ham ishdan chiqadi.
<IfModule mpm_prefork_module>
StartServers 10
MinSpareServers 25
MaxSpareServers 50
ServerLimit 1500
MaxClients 1000
MaxRequestsPerChild 3000
</IfModule>
SSL-ni sozlang
Hozir ko'pchilik veb-saytlarda HTTPS xavfsiz ulanishlarini qo'llab-quvvatlash uchun SSL yoqilgan. HTTPS-ning afzalligi shundan iboratki, uzatish paytida tarkib shifrlangan, shuning uchun atrofdagilar tomonidan ushlanib qolganligi sababli ma'lumotlar chiqib ketishi haqida xavotirlanishga hojat yo'q. SSL-ni yoqishdan oldin, avval sertifikat olish uchun ariza berishimiz kerak.Sertifikat olgandan so'ng SSL sozlamalarini bajarish uchun quyidagi konfiguratsiyaga murojaat qiling.
<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>