Debian Apache怎样优化网站的加载速度
导读:Debian Apache 网站加载速度优化清单 一 基础与连接优化 启用压缩:使用 mod_deflate 对文本、样式、脚本等开启 Gzip,减少传输体积。示例:<IfModule mod_deflate.c> A...
Debian Apache 网站加载速度优化清单
一 基础与连接优化
- 启用压缩:使用 mod_deflate 对文本、样式、脚本等开启 Gzip,减少传输体积。示例:
< IfModule mod_deflate.c> AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css \ application/javascript application/json application/x-javascript image/svg+xml < /IfModule> - 启用长连接:减少 TCP 握手与慢启动开销。
KeepAlive On MaxKeepAliveRequests 100 KeepAliveTimeout 5 - 调整超时:避免空闲连接占用过久。
Timeout 30 - 精简模块:禁用不需要的模块(如示例的 dummy_module),降低内存与 CPU 占用。完成后执行:
sudo systemctl restart apache2使配置生效。
二 并发与 MPM 调优
- 选择并优化 MPM(多处理模块)。动态站点优先 event MPM,高并发下资源利用更优;若使用 PHP-FPM 通常也推荐 event。示例参数(请结合内存与压测微调):
< IfModule mpm_event_module> StartServers 2 MinSpareThreads 25 MaxSpareThreads 75 ThreadLimit 64 ThreadsPerChild 25 MaxRequestWorkers 150 MaxConnectionsPerChild 0 < /IfModule> - 如使用 prefork MPM(常见于传统 PHP 模块场景),重点控制单进程并发与生命周期:
< IfModule mpm_prefork_module> StartServers 5 MinSpareServers 5 MaxSpareServers 10 MaxClients 150 MaxRequestsPerChild 0 < /IfModule> - 提示:并发与内存强相关。一般经验是“每个并发工作进程预留 几十 MB 内存”,据此反推 MaxRequestWorkers,避免 OOM 与频繁回收。
三 缓存与静态资源
- 页面与静态资源缓存:启用 mod_expires 设置浏览器强缓存,减少重复请求。
< IfModule mod_expires.c> ExpiresActive On ExpiresByType text/html "access plus 1 hour" ExpiresByType text/css "access plus 1 week" ExpiresByType application/javascript "access plus 1 week" ExpiresByType image/jpeg "access plus 1 month" ExpiresByType image/png "access plus 1 month" ExpiresByType image/gif "access plus 1 month" < /IfModule> - 反向代理/网关缓存:启用 mod_cache/mod_cache_disk 缓存可缓存内容(如静态资源或网关层可缓存的页面片段),减轻后端压力。
< IfModule mod_cache.c> < IfModule mod_cache_disk.c> CacheRoot /var/cache/apache2/mod_cache_disk CacheEnable disk / CacheDirLevels 2 CacheDirLength 1 < /IfModule> < /IfModule> - 静态资产优化:压缩图片(如 TinyPNG/ImageMagick)、采用 WebP/AVIF、合并与最小化 CSS/JS、减少阻塞资源,可显著缩短首屏时间。
四 HTTPS 与传输层优化
- 启用 HTTP/2(需 mod_http2):多路复用降低队头阻塞,提升并发加载体验。
# a2enmod http2 # 在虚拟主机启用:Protocols h2 http/1.1 - TLS/OCSP Stapling:减少证书状态往返,加快握手。
SSLOpenSSLConfCmd DHParameters "/etc/ssl/certs/dhparam.pem" SSLUseStapling On SSLStaplingCache "shmcb:/var/run/stapling-cache(150000)" SSLSessionCache "shmcb:/var/run/ssl_scache(512000)" SSLSessionCacheTimeout 300 - 建议:保持 SSLCompression off,避免 CRIME 类攻击面;优先 ECDHE 套件与 TLS 1.2/1.3。
五 应用层与运维实践
- PHP 加速:启用 OPcache(PHP 7+ 内置),减少脚本编译开销。
; php.ini opcache.enable=1 opcache.memory_consumption=128 opcache.interned_strings_buffer=8 opcache.max_accelerated_files=4000 opcache.validate_timestamps=0 ; 生产环境建议关闭,配合部署流程刷新 - 数据库与 LAMP:合理设置 InnoDB buffer pool(如系统内存充裕可至数 GB 量级)、优化慢查询、必要时引入查询缓存或读写分离,降低页面渲染等待。
- 内容分发与网络:接入 CDN 分发静态资源、优化 DNS TTL 与智能解析;内核网络参数可做适度优化(如
net.ipv4.tcp_tw_reuse=1、net.core.somaxconn=4096),并监控系统指标与日志,持续迭代。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Debian Apache怎样优化网站的加载速度
本文地址: https://pptw.com/jishu/754240.html
