Instale o Apache no CentOS7
Referência oficial
Website oficial Documentação do Produto HTTPS GzipExecutar instalação
yum -y install libmcrypt libmcrypt-devel mcrypt mhash
yum -y install httpd
Modifique o arquivo de configuração
Após a conclusão da instalação, precisamos fazer algumas modificações no arquivo de configuração. O conteúdo de modificação específico geralmente inclui: IP e porta vinculados, transmissão de compressão gzip, número de conexões simultâneas e SSL. Vamos explicá-los um por um abaixo.
Modifique o IP vinculado e a porta
O IP e a porta padrão que o Apache escuta é 0.0.0.0:80. Se precisarmos modificar o IP monitorado e a porta, podemos modificá-lo diretamente. Se precisarmos vincular várias portas, também podemos adicioná-las. No exemplo a seguir, vinculamos as portas 80 e 443. A porta 443 é o número da porta padrão para HTTPS.
Listen 80
Listen 443 https
Transmissão gzip aberta
Como o desempenho da CPU do nosso computador é relativamente alto, normalmente o gargalo aparecerá na largura de banda da rede, portanto, podemos escolher ativar a transmissão de compressão gzip. São 9 níveis de compressão, podemos escolher de acordo com o desempenho do nosso servidor e encontrar o nível mais adequado. No exemplo abaixo, nós o definimos para o nível 1. Os tipos de arquivos compactados são: html, xml, php, css, js, também podemos adicionar tipos de arquivos compactados conforme necessário.
<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>
Configurar KeepAlive
A função do KeepAlive é manter o cliente e o servidor conectados por um período de tempo. Quando abrimos uma página da Web, geralmente precisamos carregar o conteúdo principal, js, css e imagens. Como cada recurso precisa iniciar uma solicitação HTTP separada, habilitamos KeepAlive para reduzir o tempo necessário para cada solicitação para estabelecer um link TCP / IP. Mas KeepAlive também tem desvantagens, ele fará com que os recursos IO do servidor sejam ocupados, então precisamos escolher se vamos habilitar KeepAlive de acordo com a situação real. Se KeepAlive estiver ativado, também precisamos definir um tempo limite razoável para evitar que o IO do servidor seja ocupado por um longo tempo. O exemplo a seguir contém várias configurações principais de KeepAlive.
KeepAlive On
MaxKeepAliveRequests 400
KeepAliveTimeout 5
Configure o número de concorrentes
Uma configuração razoável do número de simultâneos pode melhorar muito a taxa de transferência do servidor. Normalmente, nosso Apache funciona no modo mpm_prefork. Precisamos configurar razoavelmente vários parâmetros-chave. O que precisamos prestar atenção é que o número máximo de conexões não deve ser muito pequeno; muito pequeno fará com que um grande número de solicitações do usuário seja rejeitado quando a simultaneidade for alta. O valor razoável que definimos deve referir-se à CPU e memória do servidor.Contanto que os recursos sejam suficientes, devemos defini-lo o maior possível, mas se definirmos muito, os recursos do servidor se esgotarão e o Apache também travará.
<IfModule mpm_prefork_module>
StartServers 10
MinSpareServers 25
MaxSpareServers 50
ServerLimit 1500
MaxClients 1000
MaxRequestsPerChild 3000
</IfModule>
Configurar SSL
A maioria dos sites agora tem SSL habilitado para suportar conexões seguras HTTPS. A vantagem do HTTPS é que o conteúdo durante a transmissão é criptografado, portanto, não há necessidade de se preocupar com vazamento de informações devido à interceptação por terceiros. Antes de ativar o SSL, devemos primeiro solicitar um certificado. Depois de obter o certificado, consulte a seguinte configuração para completar as configurações de 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>