Instala Apache en CentOS7
Referencia oficial
Páxina web oficial Documentación do produto HTTPS GzipRealizar a instalación
yum -y install libmcrypt libmcrypt-devel mcrypt mhash
yum -y install httpd
Modifique o ficheiro de configuración
Despois de completar a instalación, necesitamos facer algunhas modificacións no ficheiro de configuración. O contido da modificación específica normalmente inclúe: IP e porto enlazados, transmisión de compresión gzip, número de conexións simultáneas e SSL. Imos explicalos un por un a continuación.
Modifique a IP e o porto enlazados
A IP e o porto predeterminados que escoita Apache é 0.0.0.0:80. Se necesitamos modificar a IP e o porto monitorizados, podemos modificalo directamente. Se necesitamos enlazar varios portos, tamén podemos engadilos. No seguinte exemplo, enlazamos os portos 80 e 443. O porto 443 é o número de porto predeterminado para HTTPS.
Listen 80
Listen 443 https
Transmisión gzip aberta
Debido a que o rendemento da CPU do noso ordenador é relativamente alto, normalmente o pescozo de botella aparecerá no ancho de banda da rede, polo que podemos optar por activar a transmisión de compresión gzip. Hai niveis de compresión 9. Podemos escoller segundo o rendemento do noso servidor e atopar o nivel máis adecuado. No exemplo seguinte, establecémolo no nivel 1. Os tipos de ficheiros comprimidos son: html, xml, php, css, js, tamén podemos engadir tipos de ficheiros comprimidos segundo sexa necesario.
<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>
Configura KeepAlive
A función de KeepAlive é manter o cliente e o servidor conectados durante un período de tempo. Cando abrimos unha páxina web, normalmente necesitamos cargar o contido principal, js, css e imaxes. Dado que cada recurso precisa iniciar unha solicitude HTTP separada, habilitamos KeepAlive para reducir o tempo necesario para que cada solicitude estableza unha ligazón TCP / IP. Pero KeepAlive tamén ten inconvenientes: fará que se ocupen os recursos de E / S do servidor, polo que debemos escoller se habilitaremos KeepAlive segundo a situación real. Se KeepAlive está activado, tamén debemos establecer un tempo de espera razoable para evitar que o IO do servidor estea ocupado durante moito tempo. O seguinte exemplo contén varias opcións principais de KeepAlive.
KeepAlive On
MaxKeepAliveRequests 400
KeepAliveTimeout 5
Configure o número de simultáneos
Unha configuración razoable do número de concorrentes pode mellorar moito o rendemento do servidor. Normalmente o noso Apache funciona en modo mpm_prefork. Necesitamos configurar razoablemente varios parámetros clave. O que debemos prestar atención é que o número máximo de conexións non debe ser demasiado pequeno, demasiado pequeno fará que se rexeiten un gran número de solicitudes de usuarios cando a concorrencia sexa alta. O valor razoable que fixemos debería referirse á CPU e á memoria do servidor. Mentres os recursos sexan suficientes, deberiamos establecelo o máis grande posible, pero se o configuramos demasiado grande, os recursos do servidor esgotaranse e Apache tamén fallará.
<IfModule mpm_prefork_module>
StartServers 10
MinSpareServers 25
MaxSpareServers 50
ServerLimit 1500
MaxClients 1000
MaxRequestsPerChild 3000
</IfModule>
Configurar SSL
A maioría dos sitios web teñen SSL habilitado para admitir conexións seguras HTTPS. A vantaxe de HTTPS é que o contido durante a transmisión está cifrado, polo que non hai que preocuparse pola fuga de información debido á interceptación doutras persoas. Antes de habilitar SSL, primeiro debemos solicitar un certificado. Despois de obter o certificado, consulte a seguinte configuración para completar a configuración 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>