首页云计算Apache网页优化(企业网站结构部署与优化)

Apache网页优化(企业网站结构部署与优化)

时间2024-07-25 00:54:24发布ongwu分类云计算浏览54

本章结构

一、Apache网页优化 在使用 Apache 作为 Web 服务器的过程中,只有对 Apache 服务器进行适当的优化配置,才能让 Apache 发挥出更好的性能。反过来说,如果 Apache 的配置非常糟糕,Apache可能无法正常为我们服务。因此,针对各种企业应用需求对 Apache 服务器配置进行一定的优化是必不可少的。

网页优化概述

gzIP 介绍

HTTP 压缩的过程

Apache 的压缩模块

Apache 的压缩模块

启用网页压缩功能步骤

重新编译 Apache 添加 mod_deflate 模块

配置 mod_deflate 模块启用

检查安装情况并测试 mod_deflate 压缩是否生效

apache服务器压缩模块怎么安装

先把apache服务关闭掉,然后cd到解压目录重新配置

在原有的基础上添加一个压缩模块(deflate)

cd到解压目录

./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi --enable-deflate

然后:make && make install

使用apachectl -t -D DUMP_MODULES | grep deflate 查看一下有没有这个模块

然后再查看模块配置文件

有这个配置文件,那为什么找不到这个模块呢?

配置文件中没有启用这个模块在apache配置文件中写入加载此模块的语句,如下: vim /uar/local/httpd/conf/httpd.conf 在一个空白行写入:

重启服务后,再去检测有没有这个模块

只是加载了进去,还没有指定启动该模块 再进入主配置文件:编写以下内容: LoadModule deflate_module modules/mod_deflate.so <IfModule mod_deflate.c> DeflateCompressionLevel 6 SetOutputFilter DEFLATE AddOutputFilterByType DEFLATE text/html text/plain text/xml text/csstext/javascrIPt application/x-javascrIPt application/javascrIPt application/json SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzIP dont-vary SetEnvIfNoCase Request_URI .(?:exe|t?gz|zIP|bz2|sit|rar)$ no-gzIP dont-vary SetEnvIfNoCase Request_URI .(?:pdf|mov|avi|mp3|mp4|rm)$ no-gzIP dont-vary AddOutputFilterByType DEFLATE text/* AddOutputFilterByType DEFLATE application/ms* application/vnd* application/postscrIPt application/javascrIPt application/x-javascrIPt AddOutputFilterByType DEFLATE application/x-httpd-php application/x-httpd-fastphp </IfModule>

httpd -t 检测一下apache配置文件语法有没有错误;

重启服务:systemctl restart httpd 打开网页显示有压缩工具就说明成功了:

二、网页缓存

网页缓存是将一部分经常不会改变和变动很少的页面缓存,下次浏览器再次访问这些页面时,不需要再次去下载这些页面,从而提高了用户访问速度。

Apache 的 mod_expires 模块会自动生成页面头部信息中的 Expires 标签和Cache-Control 标签客户端浏览器根据标签决定下次访问是在本地机器的缓存中获取页面,不需要向服务器再次发出请求,从而降低客户端访问频率和次数,达到减少不必要的流 量和增加访问速度的目的。配置 mod_expires 模块的步骤与 mod_deflate 模块相似。

启用网页缓存功能步骤

配置 mod_expires 模块启用

重启 Apache 服务

网页缓存 首先还是进入apache的主配置文件内找到expires,把前面的注释去掉,

写入以下语句: 指定最大缓存时间为60秒。

再使用httpd -t 检查语法问题 重启服务;systemctl restart httpd

三、隐藏版本信息

为了安全起见,可以把版本信息隐藏起来,防止黑客识得版本信息进行入侵:

首先先打开主配置文件搜索default: 注释去掉,使得主配置文件能够识别文件中的配置

然后进入该文件进行修改

重启服务后生效:

四、Apache 防盗链

192.168.10.101作为服务器 benet.com 192.168.10.102作为盗链者 accp.com win11作为客户端进行验证 把这两行内容放到三个主机的hosts文件中: 192.168.10.101 www.benet.com 192.168.10.102 www.accp.com

也要写到win11的hosts文件中。让win11系统也能够解析对应的域名 服务器正常的网站内容构建一下: cd进入网站的站点目录下:之前源码安装的方式站点目录在这里 /usr/local/httpd/htdocs 然后把这个实验图片放到目录中:

图片文logo.jpg件拷贝到apache的网站根目录下并修改网页文件 [root@apache1 ~]# vim /usr/local/httpd/htdocs/index.html <html> <body> <h1>It work ! </h1> <img src="logo.jpg"/> </body> </html> 在win11访问这个网站验证

用另一台apache服务器盗链(盗图网站) 在 www.accp.com 服务器,修改 index.html 文件,加入盗取图片链接 yum 安装的方式网站的站点目录在/var/www/html

再用win11主机去验证 访问的是accp.com,但是图片是benet.com给的,这就完成了盗链。

请求的是accp的,但是图片请求的是benet的。

如何防盗链??? 先把跳转error的图片放到/usr/local/httpd/htdocs/ (网站站点目录下)

先打开服务器的主配置文件,启用一个重写模块 vim /usr/local/httpd/conf/httpd.conf 将该模块的注释去掉;即启用。 再写重写规则

写完使用httpd -t 检查语法格式;随后重启服务后生效; 然后使用win11验证

因为写的正则表达式,重写语句中,本图片和语句中的规则相冲突,会进入循环,再进入主配置文件 把png的后缀去掉。

重启后生效;再用win11去验证 再去访问盗链者的网站就会跳转到http://www.benet.com/error.phg这张图片

首先访问的是盗链者的网站,且没有指定要访问文件,所以直接跳转到了主页文件,但是盗链者的主页文件写的是我服务器文件链接,又因为我写了地址重写语句,因此,最后跳转到了我服务器下的error这张图片

Ongwu博客 版权声明:以上内容未经允许不得转载!授权事宜或对内容有异议或投诉,请联系站长,将尽快回复您,谢谢合作!

展开全文READ MORE
请使用C语言编写一个简单的MFC应用程序,实现一个窗口并在其中添加一些控件。 纯净IP的重要性解析与测评分析

游客 回复需填写必要信息