| 
 | 
	
 
 
  Apache优化应用三(网页优化) 
  目录 
  第一部分  准备工作 
  第二部分  安装Apache服务 
  第三部分  Apache网页优化—网页压缩 
  第四部分  Apache网页优化—网页缓存 
  第一部分  准备工作 
  一:服务器:Linux系统—CentOS 7.4; 
  IP地址:192.168.80.10 
 
  客户端:以WIN7为例,测试验证结果,与服务器在同一网段; 
  IP地址:192.168.80.2 
  二:准备压缩包 
 
  //apr-1.6.2.tar.gz和apr-util-1.6.0.tar.gz是httpd2.4以后的版本所需要的插件,必须安装 
  三:将防火墙与selinux关闭 
 
  第二部分 安装Apache服务 
  一:安装编译工具与插件 
  [root@localhost ~]# yum -y install \ 
  gcc \ 
  gcc-c++ \ 
  make \ 
  pcre-devel \ 
  expat-devel \ 
  perl 
   二:解压: 
  [root@localhost ~]# tar xf apr-1.6.2.tar.gz 
  [root@localhost ~]# tar xf apr-util-1.6.0.tar.gz 
  [root@localhost ~]# tar xf httpd-2.4.29.tar.bz2 
  [root@localhost ~]# mv apr-1.6.2 httpd-2.4.29/srclib/apr 
  [root@localhost ~]# mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util 
  三:配置(自定义个性化配置) 
  [root@localhost ~]# cd httpd-2.4.29        //必须进入安装目录下 
  [root@localhost httpd-2.4.29]# ./configure \ 
  --prefix=/usr/local/httpd \    //指定将httpd程序安装到/usr/local/httpd目录下 
  --enable-so \              //启用动态加载模块功能 
  --enable-rewrite \        //启用网页地址重写功能,用于网站优化及目录迁移 
  --enable-charset-lite \     //启用字符集支持,以便支持使用各种字符集编码的网页 
  --enable-cgi         //启用CGI脚本程序支持,便于扩展网站的应用访问能力 
   四:编译及安装 
  [root@localhost httpd-2.4.29]# make && make install 
  //将httpd服务添加到系统服务 
  [root@localhost httpd-2.4.29]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd 
  [root@localhost httpd-2.4.29]# vi /etc/init.d/httpd 
  添加以下两行(注意,“#”不能省略): 
 
  保存退出 
  [root@localhost httpd-2.4.29]# chkconfig --add httpd     //将httpd加入到SERVICE管理器 
  [root@localhost httpd-2.4.29]# systemctl daemon-reload   //重载系统系统管理器 
  五:编辑httpd主配置文件 
  [root@localhost httpd-2.4.29]# vi /usr/local/httpd/conf/httpd.conf 
  修改以下内容: 
  ServerName localhost 
  保存退出 
  //优化执行路径(执行程序文件的原路径不在PATH环境变量中,做个软链接使其可以执行) 
  [root@localhost httpd-2.4.29]# ln -s /usr/local/httpd/conf/httpd.conf /etc/ 
  [root@localhost httpd-2.4.29]# ln -s /usr/local/httpd/bin/* /usr/local/bin/ 
  //检查语法错误 
  [root@localhost httpd-2.4.29]# httpd –t 
  或者:[root@localhost httpd-2.4.29]# apachectl –t 
 
  //查看程序版本 
 
  六:启动服务 
  [root@localhost httpd-2.4.29]# systemctl start httpd 
  [root@localhost httpd-2.4.29]# systemctl enable httpd  //将httpd设为开机启动 
  [root@localhost httpd-2.4.29]# netstat -anpt | grep 80  //查看httpd服务运行状态 
 
  七:验证 
  用WIN7客户端访问服务器 
  浏览器访问:http://192.168.80.10 
 
  验证成功 
  (注意,网页默认显示内容为:/usr/local/httpd/htdocs/index.html) 
 
  第三部分  Apache网页优化—网页压缩 
  一:定制压缩模块 
  [root@localhost ~]# cd httpd-2.4.29 
  [root@localhost httpd-2.4.29]# ./configure \ 
  --prefix=/usr/local/httpd \ 
  --enable-so \ 
  --enable-rewrite \ 
  --enable-charset-lite \ 
  --enable-cgi \ 
  --enable-cgid \ 
  --enable-deflate          //增加压缩模块 
 
  [root@localhost httpd-2.4.29]# make && make install     //编译安装 
   二:加载压缩模块 
  [root@localhost httpd-2.4.29]# vi /etc/httpd.conf        //手动加载 
  添加一行内容: 
 
  保存退出 
 
  [root@localhost httpd-2.4.29]# service httpd restart        //重启apache服务 
  [root@localhost httpd-2.4.29]# apachectl -D DUMP_MODULES | grep deflate    //查看是否加载好压缩模块 
 
  三:编辑配置文件 
  [root@localhost httpd-2.4.29]# vi /etc/httpd.conf 
  添加三行内容: 
  AddOutputFilterByType DEFLATE text/html text/plain text/css text/xml text/javascript image/png image/jpeg application/x-httpd-php application/x-javascript            //对以上类型的文件启动gzip压缩 
  DeflateCompressionLevel 9       //压缩级别 
  SetOutputFilter DEFLATE         //启用deflate模块对本站点的输出进行gzip压缩 
 
  [root@localhost httpd-2.4.29]# apachectl –t    //检查语法错误 
  四:编辑默认网页显示文件 
  [root@localhost httpd-2.4.29]# cd /usr/local/httpd/htdocs/ 
  [root@localhost htdocs]# vi index.html 
  编辑以下测试页内容(如果原来有内容,全部删除): 
   
   
  --压缩测试页-- 
   
  这是一个测试网页内容压缩的页面!!This is test Page!! 
                      //注意图片路径 
   
   
  保存退出 
 
 
  [root@localhost htdocs]# service httpd restart      //重启http服务 
  五:验证: 
  win7下访问:192.168.80.10 
 
  如图所示:中文字符乱码 
  //解决不识别中文字符问题 
  [root@localhost htdocs]# vi /etc/httpd.conf 
  添加以下内容: 
  AddDefaultCharset utf-8 
  保存退出 
  //重新访问192.168.80.10 
 
  //验证成功(如果网页反应不过来,清理下缓存) 
  //Wireshark抓包验证:已生效(刷新网页后读包) 
 
  //成功压缩 
  第四部分  Apache网页优化—网页缓存 
  [root@localhost ~]# apachectl -D DUMP_MODULES | grep expires          //查看是否加载了expires模块(缓存模块) 
  [root@localhost ~]# service httpd stop     //停止http服务 
  一:配置缓存模块 
  [root@localhost ~]# cd httpd-2.4.29 
  [root@localhost httpd-2.4.29]# ./configure \ 
  --prefix=/usr/local/httpd \ 
  --enable-so \ 
  --enable-rewrite \ 
  --enable-charset-lite \ 
  --enable-cgi \ 
  --enable-cgid \ 
  --enable-deflate \ 
  --enable-expires           //增加缓存模块 
  [root@localhost httpd-2.4.29]# make && make install       //编译安装 
   二:加载缓存模块 
  [root@localhost httpd-2.4.29]# vi /etc/httpd.conf         //手动加载缓存模块 
  增加以下内容: 
  LoadModule expires_module modules/mod_expires.so 
 
  保存退出 
  [root@localhost httpd-2.4.29]# apachectl –t    //检查语法错误 
  三:编辑配置文件 
  [root@localhost httpd-2.4.29]# vi /etc/httpd.conf 
  最后添加以下内容: 
   
  ExpiresActive On                              //开启缓存功能 
  ExpiresDefault "access plus 60 seconds"           //缓存时间设置60秒(对于http协议下任意格式的文件(html,css,js图片等)都是60秒后过期) 
   
 
  保存退出 
  [root@localhost httpd-2.4.29]# apachectl -D DUMP_MODULES | grep expires   //查看模块加载 
 
  [root@localhost httpd-2.4.29]# service httpd start        //开启http服务 
  四:验证 
  Win7下Wireshark抓包(刷新网页后读包) 
 
  //网页缓存已生效 
 
 |   
 
 
 
 | 
  
 | 
 | 
 | 
| 
 | 
 |