Apache优化之压缩

Apache优化之压缩

前言

在网页中,我们可以看见很多的图片、文字、视频等等,图片和视频往往在一个网页中占用的很多的资源,我们有时候会遇到这样的情况:图片或者视频加载到一半就打不开了,这样不仅浪费的流量,而且给用户的体验极差。为了解决这个问题,就有了在Apache里面添加压缩模块,将制定的信息进行压缩。今天我们就来看看,Apache里面将信息压缩是怎么一个情况。

实验环境

VMware Workstation

centos7虚拟机一台

win10主机一台

Apache源码包

链接:https://pan.baidu.com/s/1au7ot3urRkBCfP7247mKoQ
提取码:y3m7

实验步骤

1.查看httpd服务是否安装,并关闭防火墙

[root@localhost ~]# rpm -q httpd
未安装软件包 httpd 
[root@localhost ~]# systemctl stop firewalld 
[root@localhost ~]# setenforce 0

2.将apr包解压到/opt目录下面

[root@localhost ~]# ls
anaconda-ks.cfg   apr-util-1.6.0.tar.gz  httpd-2.4.29.tar.bz2  公共  视频  文档  音乐
apr-1.6.2.tar.gz  awstats-7.6.tar.gz     initial-setup-ks.cfg  模板  图片  下载  桌面
[root@localhost ~]# tar -zxvf apr-1.6.2.tar.gz -C /opt/
[root@localhost ~]# tar -zxvf apr-util-1.6.0.tar.gz -C /opt/
[root@localhost ~]# tar -jxvf httpd-2.4.29.tar.bz2 -C /opt/

3.将/opt目录下的apr包放入httpd-2.4.29中的指定位置

[root@localhost ~]# cd /opt
[root@localhost opt]# ls
apr-1.6.2  apr-util-1.6.0  httpd-2.4.29  rh
[root@localhost opt]# mv apr-1.6.2/ httpd-2.4.29/srclib/apr
[root@localhost opt]# mv apr-util-1.6.0/ httpd-2.4.29/srclib/apr-util
[root@localhost opt]# ls
httpd-2.4.29  rh

4.将编译安装的环境先下载好,并且查看安装包是否装完

[root@localhost opt]# yum -y install gcc gcc-c++ pcre pcre-devel zlib-devel make expat-devel
[root@localhost opt]# rpm -q gcc
gcc-4.8.5-39.el7.x86_64
[root@localhost opt]# rpm -q gcc-c++
gcc-c++-4.8.5-39.el7.x86_64
[root@localhost opt]# rpm -q pcre
pcre-8.32-17.el7.x86_64
[root@localhost opt]# rpm -q pcre-devel
pcre-devel-8.32-17.el7.x86_64
[root@localhost opt]# rpm -q zlib-devel
zlib-devel-1.2.7-18.el7.x86_64
[root@localhost opt]# rpm -q make
make-3.82-24.el7.x86_64
[root@localhost opt]# rpm -q expat-devel
expat-devel-2.1.0-10.el7_3.x86_64

5.开始编译

[root@localhost opt]# cd httpd-2.4.29/
[root@localhost httpd-2.4.29]# ls
ABOUT_APACHE     BuildBin.dsp    emacs-style     LAYOUT        NOTICE            srclib
acinclude.m4     buildconf       httpd.dep       libhttpd.dep  NWGNUmakefile     support
Apache-apr2.dsw  CHANGES         httpd.dsp       libhttpd.dsp  os                test
Apache.dsw       CMakeLists.txt  httpd.mak       libhttpd.mak  README            VERSIONING
apache_probes.d  config.layout   httpd.spec      LICENSE       README.cmake
ap.d             configure       include         Makefile.in   README.platforms
build            configure.in    INSTALL         Makefile.win  ROADMAP
BuildAll.dsp     docs            InstallBin.dsp  modules       server
[root@localhost httpd-2.4.29]# ./configure \
> --prefix=/usr/local/httpd \
> --enable-deflate \                //开启压缩模块
> --enable-so \
> --enable-rewrite \
> --enable-charset-lite \
> --enable-cgi
[root@localhost httpd-2.4.29]# make && make install

6.创建软链接,便于以后的操作和管理

[root@localhost httpd-2.4.29]# cd /usr/local/httpd/
[root@localhost httpd]# ls
bin  build  cgi-bin  conf  error  htdocs  icons  include  lib  logs  man  manual  modules
[root@localhost httpd]# cd conf/
[root@localhost conf]# ls
extra  httpd.conf  magic  mime.types  original
[root@localhost conf]# ln -s /usr/local/httpd/conf/httpd.conf /etc/httpd.conf

7.修改Apache的主配置文件,并检查一下语法

[root@localhost conf]# vim /etc/httpd.conf
LoadModule deflate_module modules/mod_deflate.so
LoadModule headers_module modules/mod_headers.so
LoadModule filter_module modules/mod_filter.so
<IfModule mod_deflate.c>
    AddOutputFilterByType DEFLATE text/html text/plain text/css text/xml text/javascript text/jpg text/png
    DeflateCompressionLevel 9
    SetOutputFilter DEFLATE
</IfModule>
Listen 192.168.73.148:80
#Listen 80
ServerName www.hello.com:80
[root@localhost conf]# /usr/local/httpd/bin/apachectl -t
Syntax OK

8.启动服务,查看并验证模块

[root@localhost conf]# /usr/local/httpd/bin/apachectl start
[root@localhost conf]# cd ..
[root@localhost httpd]# ls
bin  build  cgi-bin  conf  error  htdocs  icons  include  lib  logs  man  manual  modules
[root@localhost httpd]# cd htdocs/
[root@localhost htdocs]# ls
index.html
[root@localhost htdocs]# cat index.html 
<html><body><h1>It works!</h1></body></html>
[root@localhost htdocs]# cd /usr/local/httpd/bin/
[root@localhost bin]# ./apachectl -t -D DUMP_MODULES | grep "deflate"
deflate_module (shared)

9.在win10主机里面看看

在这里插入图片描述

10.我们在Apache服务器的站点添加一个图片

[root@localhost bin]# cd /usr/local/httpd/htdocs/
[root@localhost htdocs]# ls
E2A44F9213403D04017939019ADDED89.gif  index.html
[root@localhost htdocs]# vim /usr/local/httpd/htdocs/index.html
<html><body><h1>It works!</h1>
<img src="E2A44F9213403D04017939019ADDED89.gif" \></body></html>

在win10主机中测试

在这里插入图片描述

实验总结

这个实验中遇到了一个问题,就是win10主机中自带的浏览器不知道为什么,就是无法访问Apache,所以,就下载了个谷歌浏览器,然后发现实验一下浏览器一下子就出来了。有时候,我们Apache访问出不来的时候,就有可能是防火墙没有关闭,或者就是浏览器的问题。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值