Apache网页优化

一、网页压缩

1. 检查是否安装mod_ deflate模块

apachectl -t -D DUMP_MODULES | grep "deflate"

在这里插入图片描述

2. 编译安装Apache添加mod_deflate模块

systemctl stop httpd.service
cd /usr/local/httpd/conf
mv httpd.conf httpd.conf.bak
yum -y install gcc gcc-c++ pcre pcre-devel zlib-devel
cd /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

在这里插入图片描述
在这里插入图片描述

3. 配置mod_deflate模块并启用

vim /usr/local/httpd/conf/httpd.conf
#-----52行-----修改
Listen 192.168.117.40:80
#-----105行-----取消注释
LoadModule deflate_module modules/mod_deflate.so		#开启mod_deflate 模块
#-----197行-----取消注释,修改
ServerName www.ng.com:80
#-----末行添加-----
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/css text/xml text/javascript text/jpg text/png	
#代表对什么样的内容启用gzip压缩
DeflateCompressionLevel 9			#代表压缩级别,范围为1~9
SetOutputFilter DEFLATE				#代表启用deflate 模块对本站点的输出进行gzip压缩
</IfModule>

在这里插入图片描述

4. 检查安装情况,启动服务

apachectl -t			                            #验证配置文件的配置是否正确
apachectl -t -D DUMP_MODULES | grep "deflate"		#检查 mod_deflate 模块是否已安装
deflate_module (shared)							    #已安装的正确结果
systemctl start httpd.service

在这里插入图片描述

5. 测试mod_deflate压缩生效与否

cd /usr/local/httpd/htdocs
#将图片拖到此目录下

在这里插入图片描述

在Linux系统中,打开火狐浏览器,右击点查看元素
选择 网络→重新载入→选择 HTML、WS、其他
访问 http://192.168.117.40 ,查看响应头中包含 Content-Encoding: gzip
进入虚拟机进行验证
在这里插入图片描述

二、网页缓存

1. 检查是否安装mod_expires模块

apachectl -t -D DUMP_MODULES | grep "expires"

2. 编译安装Apache添加mod_expires模块

systemctl stop httpd.service
cd /usr/local/httpd/conf
mv httpd.conf httpd.conf.bak2

在这里插入图片描述

yum -y install gcc gcc-c++ pcre pcre-devel zlib-devel
cd /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

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4. 检查安装情况,启动服务

apachectl -t			                            #验证配置文件的配置是否正确
apachectl -t -D DUMP_MODULES | grep "expires"		#检查 mod_deflate 模块是否已安装
deflate_module (shared)						     	#已安装的正确结果
systemctl start httpd.service

在这里插入图片描述

5. 测试缓存是否生效

cat /usr/local/httpd/htdocs/index.html

在这里插入图片描述
在这里插入图片描述

三、隐藏版本信息

vim /usr/local/httpd/conf/httpd.conf

在这里插入图片描述

vim /usr/local/httpd/conf/extra/httpd-default.conf

在这里插入图片描述

systemctl restart httpd

在这里插入图片描述

四、Apache防盗链

1. 盗链过程

再准备一台主机,作为盗链接网站

yum install -y httpd

在这里插入图片描述

在这里插入图片描述

<html><body><h1>
</h1>
<img src="kasumi.jpg"/>                 #需要修改图片路径
</body></html>

在这里插入图片描述
在这里插入图片描述

http://192.168.117.40/kasumi.jpg

在这里插入图片描述

echo "192.168.117.40 www.ng.com" >> /etc/hosts
echo "192.168.117.50 www.kk.com" >> /etc/hosts
systemctl restart httpd

在这里插入图片描述
在这里插入图片描述

2. 防盗链过程

2.1 检查是否安装mod_rewrite模块

apachectl -t -D DUMP_MODULES | grep "rewrite"

2.2 编译安装Apache添加mod_rewrite模块

PS:由于是在上面实验基础上做的,故此步已完成

systemctl stop httpd.service
cd /usr/local/httpd/conf
mv httpd.conf httpd.conf.bak2
yum -y install gcc gcc-c++ pcre pcre-devel zlib-devel
cd /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

2.3 配置mod_rewrite模块启用

vim /usr/local/httpd/conf/httpd.conf

在这里插入图片描述

#224行
<Directory "/usr/local/httpd/htdocs">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted

RewriteEngine On 													#打开 rewrite 功能,加入 mode_rewrite 模块内容
RewriteCond %{HTTP_REFERER} !^http://ng.com/.*$ [NC]				#设置匹配规则
RewriteCond %{HTTP_REFERER} !^http://ng.com$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.ng.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.ng.com/$ [NC]
RewriteRule .*\.(gif|jpg|swf)$ 	http://www.ng.com/error.png		    #设置跳转动作

在这里插入图片描述

在这里插入图片描述

systemctl restart httpd

在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值