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>