本文共 4597 字,大约阅读时间需要 15 分钟。
查看在linux系统安装好后有没有httpd服务有的话为避免安装冲突请用yum remove 卸载掉httpd服务
[root@localhost opt] lsapr-1.5.0 apr-util-1.5.4 epel-release-latest-7.noarch.rpm httpd-2.4.33 lamp rh
[root@localhost opt] yum install gcc gcc-c++ zlib-devel pcre pcre-devel make -y
1:安装Apache的压缩模块
[root@localhost opt] cp -R apr-1.5.0/ httpd-2.4.33/srclib/apr[root@localhost opt] cp -R apr-util-1.5.4/ httpd-2.4.33/srclib/apr-util[root@localhost opt] cd httpd-2.4.33/ #进入httpd安装包底下[root@localhost httpd-2.4.33] ./configure \--prefix=/usr/local/httpd \ #prefix指定安装目录--enable-deflate \ #安装模块--enable-so \ #启用动态加载模块--enable-rewrite \ #启用网页地址重写功能--enable-charset-lite \ #启用各种字符集支持,便于使用各种字符集编码--enable-cgi #启用CGI脚本程序支持,扩展网站应用访问能力--enable-expires \ #启用网页缓存[root@localhost httpd-2.4.33] make && make install #用make && make install 转换进制 (转换过程需等待)
[root@localhost ~] grep -v "#" /usr/local/httpd/bin/apachectl > /etc/init.d/httpd #在etc文件里面的init.d底下重新建立/bin/apachectl便于service管理[root@localhost ~] vim /etc/init.d/httpd //在开头加入#!/bin/sh # chkconfig:2345 85 15 # description:Apache is a World Wide Web server.[root@localhost ~] chmod +x /etc/init.d/httpd #给一个执行权限[root@localhost httpd-2.4.33] cd /usr/local/httpd/conf/[root@localhost conf] lsextra httpd.conf magic mime.types original[root@localhost conf] vim httpd.confLoadModule headers_module modules/mod_headers.soLoadModule deflate_module modules/mod_deflate.so //开启 去掉前面#LoadModule filter_module modules/mod_filter.so//在主配置文件末尾添加AddOutputFilterByType DEFLATE text/html text/plain text/css text/xml text/javascript DeflateCompressionLevel 9 SetOutputFilter DEFLATE
[root@localhost conf] cd /usr/local/httpd/bin/[root@localhost bin] ./apachectl -tAH00558: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain. Set the 'ServerName' directive globally to suppress this messageSyntax OK #直接验证可能会有个报错这个报错是ServerName 域名没有开启找到它修改个域名 还有一个是Liten 监听地址 把下面ipv6监听前加#关闭开启上面一个监听本地地址[root@localhost bin] ./apachectl -tSyntax OK #验证成功[root@localhost bin] ./apachectl -t -D DUMP_MODULES | grep "deflate" 验证模块有没有开启 deflate_module (shared)
</IfModule>
[root@localhost bin] ./apachectl -t Syntax OK[root@localhost bin] ./apachectl -t -D DUMP_MODULES | grep "expires" expires_module (shared) # 表示验证成功
开启mod_rewrite.so模块
[root@localhost bin] ./apachectl -t Syntax OK[root@localhost bin] ./apachectl -t -D DUMP_MODULES | grep "rewrite" rewrite_module (shared)
[root@localhost ~] vim /usr/local/httpd/conf/extra/httpd-default.confServerTokens Full #把Full修改为Prod 只显示名称不显示版本
[root@localhost ~] systemctl start httpd.service [root@localhost ~] systemctl status httpd.service ● httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled) Active: active (running) since 一 2018-06-25 11:38:22 CST; 1s ago Docs: man:httpd(8) man:apachectl(8)[root@localhost ~] systemctl stop firewalld.service[root@localhost ~] systemctl status firewalld.service● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled) Active: inactive (dead) since 三 2018-05-16 13:42:04 CST; 1 months 9 days ago Docs: man:firewalld(1)[root@localhost ~] setenforce 0[root@localhost ~] echo "this is accp" > /var/www/html/index.html #添加一个首页
查看304包右边client里面有一个Accept-Encoding:gzip,deflate 支持压缩模块
转载于:https://blog.51cto.com/13645280/2132418