
Apache网页优化概述
发布日期:2021-05-08 02:26:55
浏览次数:26
分类:原创文章
本文共 4456 字,大约阅读时间需要 14 分钟。
Apache网页优化概述
Apache网页优化概述
-
在企业中,部署Apache后只采用默认的配置参数,会引发网站很多问题,换言之默认配置是针对以前较低的服务器配置的,以前的配置已经不适用当今互联网时代
-
为了适应企业需求,就需要考虑如何提升Apache的性能与稳定性,这就是Apache优化的内容
一、网页压缩
1、检查是否安装mod_ deflate 模块
apachectl -t -D DUMP_MODULES | grep "deflate"
2、如果没有安装mod_deflate 模块,重新编译安装 Apache 添加 mod_deflate 模块
systemctl stop httpd.servicecd /usr/local/httpd/confmv httpd.conf httpd.conf.bakyum -y install gcc gcc-c++ pcre pcre-devel zlib-develcd /opt/httpd-2.4.29/./configure \--prefix=/usr/local/httpd \--enable-so \--enable-rewrite \--enable-charset-lite \--enable-cgi \--enable-deflate #加入mod_deflate 模块make && make install
编译安装
make && make install
3、配置 mod_deflate 模块启用
vim /usr/local/httpd/conf/httpd.conf#52行;修改Listen 192.168.172.10:80#105行;取消注释;开启mod_deflate 模块LoadModule deflate_module modules/mod_deflate.so#198行;取消注释,修改ServerName www.zhangsan.com:80#末行添加<IfModule mod_deflate.c>#代表对什么样的内容启用gzip压缩AddOutputFilterByType DEFLATE text/html text/plain text/css text/xml text/javascript text/jpg text/png#代表压缩级别,范围为1~9DeflateCompressionLevel 9#代表启用deflate 模块对本站点的输出进行gzip压缩SetOutputFilter DEFLATE</IfModule>
4、检查安装情况,启动服务
#验证配置文件的配置是否正确apachectl -t#检查 mod_deflate 模块是否已安装apachectl -t -D DUMP_MODULES | grep "deflate"#已安装的正确结果deflate_module (shared)systemctl start httpd.service
5、测试 mod_deflate 压缩是否生效
cd /usr/local/httpd/htdocs#先将图片文件传到/usr/local/httpd/htdocs目录下vim index.html<html><body><h1>wowowowowow</h1><img src="ihbos.jpg"></body></html>
方法一:在Linux系统中,打开火狐浏览器,右击点查看元素选择 网络→重新载入→选择 HTML、WS、其他访问 http://192.168.172.10,查看响应头中包含 Content-Encoding: gzip方法二:在虚拟机Windows系统中依次安装 Microsoft.NET4 和fiddler 软件,打开fiddler 软件选择 inspectors —> 选择 Headers浏览器访问 http://192.168.172.10,双击200响应消息查看 Content-Encoding: gzip
二、网页缓存
1、检查是否安装 mod_expires 模块
apachectl -t -D DUMP_MODULES | grep "expires"
2、如果没有安装mod_expires 模块,重新编译安装 Apache 添加 mod_expires模块
systemctl stop httpd.servicecd /usr/local/httpd/confmv httpd.conf httpd.conf.bak1yum -y install gcc gcc-c++ pcre pcre-devel zlib-develcd /opt/httpd-2.4.29/./configure \--prefix=/usr/local/httpd \--enable-so \--enable-rewrite \--enable-charset-lite \--enable-cgi \--enable-deflate \--enable-expires #加入mod_expires 模块make && make install
3、配置 mod_expires 模块启用
vim /usr/local/httpd/conf/httpd.conf#52行;修改Listen 192.168.172.10:80#111行;取消注释;开启mod_expires 模块LoadModule expires_module modules/mod_expires.so#198行;取消注释,修改ServerName www.zhangsan.com:80#末行添加<IfModule mod_expires.c> #打开网页缓存功能 ExpiresActive On #设置缓存60秒 ExpiresDefault "access plus 60 seconds"</IfModule>
4、检查安装情况,启动服务
#验证配置文件的配置是否正确apachectl -t#检查 mod_deflate 模块是否已安装apachectl -t -D DUMP_MODULES | grep "expires"#已安装的正确结果deflate_module (shared)systemctl start httpd.service
5、测试缓存是否生效
cat /usr/local/httpd/htdocs/index.html
方法一:在Linux系统中,打开火狐浏览器,右击点查看元素选择 网络 —> 选择 HTML、WS、其他访问 http://192.168.172.10,双击200消息查看响应头中包含 Expires 项方法二:在Windows系统中依次安装 Microsoft.NET4 和fiddler 软件,打开fiddler 软件选择 inspectors —> 选择 Headers浏览器访问 http://192.168.172.10,双击200消息查看 Expires 项
三、隐藏版本信息
vim /usr/local/httpd/conf/httpd.conf#490行;取消注释Include conf/extra/httpd-default.confvim /usr/local/httpd/conf/extra/httpd-default.conf#55行;修改;将原本的Full改成Prod,只显示名称,不显示版本ServerTokens Prod#ServerTokens 表示 Server 回送给客户端的响应头域是否包含关于服务器 OS 类型和编译过的模块描述信息。systemctl start httpd.service浏览器访问 http://192.168.163.15,双击200消息查看 Server 项
四、Apache 防盗链
1、盗链演示
登录到www.zhangsan.com复制图片地址
2、设置防盗链过程
检查是否安装 mod_rewrite 模块
apachectl -t -D DUMP_MODULES | grep "rewrite"
如果没有安装mod_rewrite 模块,重新编译安装 Apache 添加 mod_rewrite模块
systemctl stop httpd.servicecd /usr/local/httpd/confmv httpd.conf httpd.conf.bak2yum -y install gcc gcc-c++ pcre pcre-devel zlib-develcd /opt/httpd-2.4.29./configure \--prefix=/usr/local/httpd \--enable-so \--enable-rewrite \--enable-charset-lite \--enable-cgi \--enable-deflate \--enable-expires make && make install
配置 mod_rewrite 模块启用
vim /usr/local/httpd/conf/httpd.conf-----157行-----取消注释LoadModule rewrite_module modules/mod_rewrite.so-----224行-----<Directory "/usr/local/httpd/htdocs">Options Indexes FollowSymLinksAllowOverride NoneRequire all grantedRewriteEngine On #打开 rewrite 功能,加入 mode_rewrite 模块内容RewriteCond %{ HTTP_REFERER} !^http://zhangsan.com/.*$ [NC] #设置匹配规则RewriteCond %{ HTTP_REFERER} !^http://zhangsan.com$ [NC]RewriteCond %{ HTTP_REFERER} !^http://www.zhangsan.com/.*$ [NC]RewriteCond %{ HTTP_REFERER} !^http://www.zhangsan.com/$ [NC]RewriteRule .*\.(gif|jpg|swf)$ http://www.zhangsan.com/error.png #设置跳转动作
在盗图网站主机上进行验证
http://www.zhangsan.comhttp://www.lisi.com
发表评论
最新留言
很好
[***.229.124.182]2025年03月22日 15时09分45秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
js中两种定时器,setTimeout和setInterval实现验证码发送
2021-05-08
Oracle常用SQL
2021-05-08
50个人围成一圈数到3和3的倍数时出圈,问剩下的人是谁?在原来的位置是多少(简单易懂)
2021-05-08
JDK、Eclipse、TOMCAT下载安装及环境变量配置
2021-05-08