E hoʻouka iā Apache ma CentOS7
Kuhikuhina kūhelu
Pūnaewele kūhelu Palapala Huahana HTTPS GzipHana i ka hoʻonoho
yum -y install libmcrypt libmcrypt-devel mcrypt mhash
yum -y install httpd
Hoʻololi i ka faila hoʻonohonoho
Ma hope o ka pau ʻana o ke kau ʻana, pono mākou e hoʻololi i ka faila hoʻonohonoho. ʻO ka ʻikepili hoʻololi maʻamau e hoʻopili pinepine ʻia: IP i hoʻopaʻa ʻia a me ke awa, hoʻoili kaomi gzip, ka helu o nā pilina like, a me SSL. E wehewehe hoʻokahi iā lākou ma lalo nei.
Hoʻololi i ka IP paʻa a me ke awa
ʻO ka IP paʻamau a me ke awa a Apache e hoʻolohe ai ʻo ia ka 0.0.0.0:80. Inā pono mākou e hoʻololi i ka IP i nānā ʻia a me ke awa, hiki iā mākou ke hoʻololi pololei. Inā pono mākou e nakinaki i nā awa he nui, hiki iā mākou ke hoʻohui iā lākou. I ka laʻana aʻe, nakinaki mākou i nā awa 80 a me 443. ʻO Port 443 ka helu awa paʻamau no HTTPS.
Listen 80
Listen 443 https
E wehe i ka hoʻoili gzip
Ma muli o ke kiʻekiʻe o kā mākou kamepiula CPU hana, maʻamau e ʻike ʻia ka ʻōmole i ka bandwidth network, no laila hiki iā mākou ke koho e hoʻohuli i ka lawe ʻana o ka compression gzip. Aia nā pae 9. o ke kaomi. Hiki iā mākou ke koho e like me ka hana a kā mākou kikowaena a ʻike i ka pae kūpono loa. I ka laʻana ma lalo, hoʻonohonoho mākou iā ia i ka pae 1. ʻO nā ʻano o nā faile i hoʻopaʻa ʻia: html, xml, php, css, js, hiki iā mākou ke pākuʻi i nā ʻano o nā faila i makemake ʻia.
<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>
E hoʻonohonoho iā KeepAlive
ʻO ka hana a KeepAlive ka mālama ʻana i ka mea kūʻai aku a me ka mea lawelawe i pili no kekahi manawa. Ke wehe mākou i kahi pūnaewele, pono mākou e hoʻouka i ka ʻike nui, js, css, a me nā kiʻi. No ka mea e pono i kēlā me kēia kumuwaiwai e hoʻomaka i kahi noi HTTP ʻokoʻa, hiki iā mākou ke mālama iā KeepAlive e hoʻemi i ka manawa i makemake ʻia no kēlā me kēia noi e hoʻokumu i kahi loulou TCP / IP. Akā he mau drawbacks kā KeepAlive. E hoʻokau ʻia ia nā kumu waiwai IO o ke kikowaena, no laila pono mākou e koho inā hiki iā KeepAlive e like me ke kūlana maoli. Inā hiki iā KeepAlive, pono mākou e hoʻonohonoho i kahi manawa kūpono kūpono e hōʻalo ai i ka lawelawe ʻo IO i kahi manawa lōʻihi. Aia i kēia laʻana kekahi mau hoʻonohonoho nui o KeepAlive.
KeepAlive On
MaxKeepAliveRequests 400
KeepAliveTimeout 5
Hoʻonohonoho i ka helu o ka concurrent
Hiki i kahi hoʻonohonoho kūpono o ka helu o ka concurrent ke hoʻomaikaʻi maikaʻi i ka throughput o ke kikowaena. Hana maʻamau kā mākou Apache i ka ʻano mpm_prefork. Pono mākou e hoʻonohonoho pono i nā ʻōkuhi kī. ʻO ka mea e pono ai mākou e nānā i ka nui o nā pilina ʻaʻole pono e liʻiliʻi, ʻo ka liʻiliʻi loa e hōʻole ʻia ka nui o nā noi o nā mea hoʻohana ke kiʻekiʻe ka concurrency. ʻO ke kumukūʻai kūpono a mākou i hoʻonohonoho ai e kuhikuhi i ka CPU a me ka hoʻomanaʻo o ka kikowaena. Inā lawa ka waiwai, pono mākou e hoʻonohonoho i ka nui e like me ka hiki, akā inā mākou e hoʻonohonoho i ka nui loa, e pau ana nā kumuwaiwai kikowaena a e hāwele pū ʻo Apache.
<IfModule mpm_prefork_module>
StartServers 10
MinSpareServers 25
MaxSpareServers 50
ServerLimit 1500
MaxClients 1000
MaxRequestsPerChild 3000
</IfModule>
Hoʻonohonoho SSL
Loaʻa ka hapa nui o nā pūnaewele i kēia manawa iā SSL e kākoʻo i nā pili paʻa HTTPS. ʻO ka pōmaikaʻi o HTTPS ʻo ka ʻike i ka wā o ka lawe ʻana i hoʻopunipuni ʻia, no laila ʻaʻohe pono e hopohopo e pili ana i ka liu ʻana o ka ʻike ma muli o ka hoʻopili ʻia ʻana e kekahi. Ma mua o ka hiki ʻana iā SSL, pono mākou e noi mua no kahi palapala. Ma hope o ka loaʻa ʻana o ka palapala, e nānā i kēia hoʻonohonoho ʻana e hoʻopau i nā hoʻonohonoho 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>