前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux Apache设置压缩及缓存

Linux Apache设置压缩及缓存

作者头像
砸漏
发布2020-10-19 15:50:15
1.6K0
发布2020-10-19 15:50:15
举报
文章被收录于专栏:恩蓝脚本恩蓝脚本

压缩文件:

编辑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|htm|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设置压缩和缓存都会增加服务器的内存压力,但设置压缩和缓存之后,网站的访问速度会有所提高

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-09-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档