文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Linux Apache设置压缩及缓存

2022-06-04 22:22

关注

压缩文件:

编辑apache模块

vim /etc/httpd/conf.modules.d/00-base.conf

确保以下三个模块没有被注释

LoadModule headers_module modules/mod_headers.so
LoadModule deflate_module modules/mod_deflate.so
LoadModule filter_module modules/mod_filter.so

注意:也可以把三个模块放到/etc/httpd/conf/httpd.conf文件里,模块只能在一个文件中加载

设置压缩规则

vim /etc/httpd/conf/httpd.conf

末尾添加

<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
AddOutputFilterByType DEFLATE application/x-font
AddOutputFilterByType DEFLATE application/x-font-opentype
AddOutputFilterByType DEFLATE application/x-font-otf
AddOutputFilterByType DEFLATE application/x-font-truetype
AddOutputFilterByType DEFLATE application/x-font-ttf
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/x-httpd-php
AddOutputFilterByType DEFLATE application/x-httpd-fastphp
AddOutputFilterByType DEFLATE font/opentype
AddOutputFilterByType DEFLATE font/otf
AddOutputFilterByType DEFLATE font/ttf
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE image/x-icon
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/xml
# Remove browser bugs (only needed for really old browsers)
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
#SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary #设置不对后缀gif,jpg,jpeg,png的图片文件进行压缩
Header append Vary User-Agent
</IfModule>

压缩率一般都大于70%

压缩率检测(http://tool.chinaz.com/Gzips/)只能在pc端检测

设置缓存:

vim /etc/httpd/conf.modules.d/00-base.conf

确保以下模块没有被注释

LoadModule headers_module modules/mod_headers.so #第一种缓存方式
LoadModule expires_module modules/mod_expires.so #第二种缓存方式

注意:也可以把这个模块放到/etc/httpd/conf/httpd.conf文件里,模块只能在一个文件中加载

设置缓存规则

vim /var/www/html/.htaccess

末尾添加

第一种缓存方式

FileEtag INode Mtime Size

第二种缓存方式

# 缓存有效时间 1 月
<FilesMatch "\.(ico|jpg|jpeg|png|gif|js|css)$">
Header set Cache-Control "max-age=2592000, public"
</FilesMatch>
<FilesMatch "\.(html|txt|htmalyTBl|php)$">
Header set Cache-Control "max-age=2592000, public, must-revalidate"
</FilesMatch>

注意:max-age为缓存时间,单位秒,按需修改

第三种缓存方式

vim /etc/httpd/conf/httpd.conf

添加以下内容

<IfModule expires_module>
ExpiresActive On
#css文件缓存2592000/3600/24=1月
ExpiresByType text/css A2592000
#js文件缓存2592000/3600/24=1月
ExpiresByType application/x-javascript A2592000
ExpiresByType application/javascript A2592000
#html文件缓存2592000/3600/24=1月
ExpiresByType text/html A2592000
#图片文件缓存2592000/3600/24=1月
ExpiresByType image/jpg A2592000
ExpiresByType image/jpeg A2592000
ExpiresByType image/gif A2592000
ExpiresByType image/png A2592000
ExpiresByType image/ico A2592000
ExpiresByType image/x-icon A2592000
#文件默认缓存1月
ExpiresDefault "access plus 30 days"
</IfModule>

注意:以上方式,三选一

重启apache服务

service httpd restart

注意:apache设置压缩和缓存都会增加服务器的内存压力,但设置压缩和缓存之后,网站的访问速度会有所提高

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-人工智能
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯