站长帮2023年WordPress网站优化日志:配置Nginx加强保护系统文件、禁止垃圾爬虫访问

2023-04-1211:42:39网站运营与SEO优化Comments1,650 views字数 2110阅读模式

站长帮网站基本上每年都会至少进行一次较大幅度的优化,主要包括主机配置环境升级优化、数据库清理优化、网站前端优化等。今年的优化工作依然由本人(想做文盲)来实施,将优化内容和效果分享出来的目的是希望能帮助更多新手站长们。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/youhua/33410.html

站长帮网站概述

当前的这版网站已运行了三年多了,在站长帮的各位小伙伴们细心呵护下,一直稳定运行,访问量也节节攀升。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/youhua/33410.html

婷婷(站长帮成员)一直在提议网站改版,但由于这一段时间以来大家的空闲时间太少,搁置了很久,但小幅度改进我们从未停过。(就算改版也依然会沿用GeneratePress主题)文章源自菜鸟学院-https://www.cainiaoxueyuan.com/youhua/33410.html

站长帮现运行的环境为:Nginx + PHP v7.4 + MySQL v5.7 + Redis v7.0.5 + WordPress v6.11 + GeneratePress v3.2.4 。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/youhua/33410.html

站长帮网站使用的插件清单(2023):文章源自菜鸟学院-https://www.cainiaoxueyuan.com/youhua/33410.html

底层优化日志

Change文章源自菜鸟学院-https://www.cainiaoxueyuan.com/youhua/33410.html

更新运行环境

  • 将 PHP 版本更新为 7.4.33
  • MySQL 升级至 5.7.40
  • Redis 升级至 7.0.5
  • Nginx 升级至 1.22.1
  • 优化 Nginx 配置文件(详见下方说明)
站长帮2023年WordPress网站优化日志:配置Nginx加强保护系统文件、禁止垃圾爬虫访问

Nginx 配置文件优化部分详解

用正则匹配部分垃圾爬虫并禁止访问,直接返回403:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/youhua/33410.html

# 屏蔽垃圾爬虫
if ($http_user_agent ~* (Scrapy|DotBot|python-requests)) {
	return 403;
}

通过Nginx配置加强保护WordPress系统文件:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/youhua/33410.html

# BEGIN 保护系统文件
	location = /wp-admin/install.php { deny all; }
	location = /nginx.conf { deny all; }
	location ~ ^/user_extention/ { deny all; }
	location ~ /\.htaccess$ { deny all; }
	location ~ /readme\.html$ { deny all; }
	location ~ /readme\.txt$ { deny all; }
	location ~ ^/wp-config.php$ { deny all; }
	location ~ ^/wp-admin/includes/ { deny all; }
	location ~ ^/wp-includes/[^/]+\.php$ { deny all; }
	location ~ ^.*/\.git/.*$ { deny all; }
	location ~ ^.*/\.svn/.*$ { deny all; }
	# 禁用 Uploads 目录的 PHP
	location ~ ^/wp\-content/uploads/.*\.(?:php[1-7]?|pht|phtml?|phps)$ { deny all; }
	# 禁用 Plugins 目录的 PHP
	location ~ ^/wp\-content/plugins/.*\.(?:php[1-7]?|pht|phtml?|phps)$ { deny all; }
	# 禁用 Themes 目录的 PHP
	location ~ ^/wp\-content/themes/.*\.(?:php[1-7]?|pht|phtml?|phps)$ { deny all; }
	# 禁用一些文件扩展名
	location ~ .*\.(ini|zip|7z|rar|tar|gz|sql|conf|bak|asp|aspx|jsp)?$ { return 404; }
# END 保护系统文件

前端优化

GenerateBlocks 今年发布的新版改变了前端块的设计思路,启用了全新的 Container 块,更新后可以用更少的 HTML 提供更多的可能性。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/youhua/33410.html

我们以前使用 GenerateBlocks 的时候就觉得它的HTML和CSS稍有点重复,所以大多块用额外的自制CSS,现在将这部分去掉,全站的自定义块已迁移至 GenerateBlocks 1.7.x 新架构。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/youhua/33410.html

Perfmatters 插件的2.0.6版带来了精简的Analytics v4统计代码,经测试非常完美,已替换 Analytics v4 默认统计代码。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/youhua/33410.html

将原来的关键路径CSS优化,变更为 移除未使用的 CSS 优化。如果没有 WP Rocket 授权码的用户可以使用 Perfmatters 插件的 Remove Unused CSS 功能。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/youhua/33410.html

Perfmatters 的这个功能与 WP Rocket 虽然不完全相同,但也非常优秀。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/youhua/33410.html

WP Rocket 会对每个页面与帖子都分别提取已使用的CSS,然后生成对应的CSS文件,未使用的CSS不会再加载。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/youhua/33410.html

而 Perfmatters 则对每个页面提取已使用的CSS,并生成对应的CSS文件。对所有帖子仅提取一个最新发布的,并生成对应的CSS文件。一般情况下,所有帖子加载的CSS是一样的(模板相同),所以这也没什么问题。而且 Perfmatters 提供了选项,可以将未使用的CSS推迟加载,这样即保证了首屏加载速度,又不会出现CSS兼容性问题。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/youhua/33410.html

优化效果展示

站长帮2023年WordPress网站优化日志:配置Nginx加强保护系统文件、禁止垃圾爬虫访问
Lightthouse 测试评分
站长帮2023年WordPress网站优化日志:配置Nginx加强保护系统文件、禁止垃圾爬虫访问
Google 检查结果
站长帮2023年WordPress网站优化日志:配置Nginx加强保护系统文件、禁止垃圾爬虫访问
百度抓取诊断
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/youhua/33410.html
  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/youhua/33410.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定