Installer Apache på CentOS7
Officiel reference
Officiel hjemmeside Produktdokumentation HTTPS GzipUdfør installationen
yum -y install libmcrypt libmcrypt-devel mcrypt mhash
yum -y install httpd
Rediger konfigurationsfilen
Når installationen er afsluttet, skal vi foretage nogle ændringer i konfigurationsfilen. Det specifikke modifikationsindhold inkluderer normalt: bundet IP og port, gzip-kompressionstransmission, antal samtidige forbindelser og SSL. Lad os forklare dem en efter en nedenfor.
Rediger den bundne IP og port
Standard IP og port, som Apache lytter til, er 0.0.0.0:80. Hvis vi har brug for at ændre den overvågede IP og port, kan vi ændre den direkte. Hvis vi har brug for at binde flere porte, kan vi også tilføje dem. I det følgende eksempel binder vi port 80 og 443. Port 443 er standardportnummeret for HTTPS.
Listen 80
Listen 443 https
Åbn gzip transmission
Da vores computers CPU-ydeevne er relativt høj, vises flaskehalsen normalt i netværksbåndbredden, så vi kan vælge at aktivere gzip-kompressionstransmission. Der er 9 komprimeringsniveauer. Vi kan vælge alt efter vores servers ydeevne og finde det mest passende niveau. I eksemplet nedenfor indstiller vi det til niveau 1. De komprimerede filtyper er: html, xml, php, css, js, vi kan også tilføje komprimerede filtyper efter behov.
<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>
Opsæt KeepAlive
KeepAlives funktion er at holde klienten og serveren forbundet i en periode. Når vi åbner en webside, er vi normalt nødt til at indlæse hovedindholdet, js, css og billeder. Da hver ressource skal starte en separat HTTP-anmodning, aktiverer vi KeepAlive for at reducere den tid, der kræves for hver anmodning om at oprette et TCP / IP-link. Men KeepAlive har også ulemper. Det vil medføre, at serverens IO-ressourcer bliver besat, så vi skal vælge, om KeepAlive skal aktiveres i henhold til den aktuelle situation. Hvis KeepAlive er aktiveret, skal vi også indstille en rimelig timeout for den for at undgå, at server IO er optaget i lang tid. Følgende eksempel indeholder flere hovedindstillinger for KeepAlive.
KeepAlive On
MaxKeepAliveRequests 400
KeepAliveTimeout 5
Konfigurer antallet af samtidige
En rimelig konfiguration af antallet af samtidige kan i høj grad forbedre serverens kapacitet. Normalt fungerer vores Apache i mpm_prefork-tilstand. Vi skal med rimelighed konfigurere flere nøgleparametre. Hvad vi skal være opmærksomme på er, at det maksimale antal forbindelser ikke skal være for lille, for lille vil medføre, at et stort antal brugeranmodninger afvises, når samtidigheden er høj. Den rimelige værdi, vi indstiller, skal henvise til serverens CPU og hukommelse. Så længe ressourcerne er tilstrækkelige, skal vi indstille den så stor som muligt, men hvis vi indstiller den for stor, vil serverressourcerne være opbrugt, og Apache vil også gå ned.
<IfModule mpm_prefork_module>
StartServers 10
MinSpareServers 25
MaxSpareServers 50
ServerLimit 1500
MaxClients 1000
MaxRequestsPerChild 3000
</IfModule>
Konfigurer SSL
De fleste websteder har nu SSL aktiveret til at understøtte sikre HTTPS-forbindelser. Fordelen ved HTTPS er, at indholdet under transmission er krypteret, så der er ingen grund til at bekymre sig om informationslækage på grund af andre aflytning. Før vi aktiverer SSL, skal vi først ansøge om et certifikat. Når vi har fået certifikatet, henvises til følgende konfiguration for at fuldføre SSL-indstillingerne.
<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>