一、概述
Apache
的默认配置会产生很多问题,不满足现在高端服务器的配置,所以为了适应企业的需求改善Apache
配置,进而提高性能和稳定性
二、优化方案
① 网页压缩
压缩网页的大小可以降低开销提升效率
►使用指令查看是否安装模块
httpd -M | grep "deflate"
►如何查找模块
使用指令Find进行查找
find ./ -name "mod_deflate.c"
►安装模块
使用apxs新增模块
#安装apxs前置
yum install zlib-devel
sed -i '38c LDFLAGS="-lz"' /usr/local/httpd/bin/apr-1-config
#源码解压目录
cd /opt/httpd/modules/filters
apxs -ica mod_deflate.c
►在httpd主配置文件行尾添加
压缩类型包括一般文本、CSS/JS、图片等
DeflateCompressionLevel
代表压缩级别[1-9]
SetOutputFilter DEFLATE
代表使用gzip
进行压缩
<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>
►重启服务
systemctl restart httpd
►测试
使用浏览器自带的网络功能查看,图片已经使用了gzip
压缩格式
② 网页缓存
►使用指令查看是否安装模块
httpd -M | grep "expires"
►安装模块
使用apxs新增模块
cd /opt/httpd/models/metadata
apxs -c -i -a mod_expires.c
►在httpd主配置文件行尾添加
ExpiresActive On
打开网页缓存功能
ExpiresDefault ""
设置缓存时间[单位秒]
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 60 seconds"
</IfModule>
►重启服务
systemctl restart httpd
►测试
③ 防泄漏
用于伪装隐藏软件的版本,可以防止闲人寻找漏洞进行破坏
►进入主配置文件将注释删除
vim /usr/local/httpd/conf/httpd.conf
Include conf/extra/httpd-default.conf
►进入默认配置文件
vim /usr/local/httpd/conf/extra/httpd-default.conf
修改第55
行内容ServerTokens
为Prod
►重启服务
systemctl restart httpd
►修改前对比修改后
④ 防盗链
可以结合网页缓存有效的防止图片被盗取使用,如被恶意盗用将会导致出现网站点击率不高但流量却非常多的情况
►开启模块
进入httpd
主配置文件
LoadModule rewrite_module modules/mod_rewrite.so
在主配置文件中搜索224
行 DocumentRoot
项目中添加
RewriteEngine On
RewriteCond %{
HTTP_REFERER} !^http://benet.com/.*$ [NC]
RewriteCond %{
HTTP_REFERER} !^http://benet.com$ [NC]
RewriteCond %{
HTTP_REFERER} !^http://www.benet.com/.*$ [NC]
RewriteCond %{
HTTP_REFERER} !^http://www.benet.com/$ [NC]
RewriteRule .*\.(gif|jpg|swf)$ http://www.benet.com/error.png
►测试
盗版网站源代码