Code前端首页关于Code前端联系我们

站长帮2023 WordPress网站优化协议:配置Nginx加强系统文件保护,拒绝垃圾爬虫访问

terry 2年前 (2023-09-26) 阅读数 55 #网站优化

站长帮网站原则上每年至少进行一次大优化,主要包括更新和优化主机配置环境,数据库清理与优化、网站前端优化等。今年的优化工作还是由我(想当文盲)来进行。分享内容和优化效果的目的是为了更多地帮助新手站长。

站长帮网站概况

当前版本的网站已经运行三年多了。在站长帮各位朋友的精心呵护下,运行平稳,参观人数也不断增加。

婷婷(站长帮成员)提议改版网站,但由于此时大家的空闲时间太少,所以暂停了很长一段时间,但我们从未停止过小小的改进。 (即使版本修改,仍然会使用GeneratePress主题)

站长帮目前的运行环境是:Nginx + PHP v7.4 + MySQL v5.7 + Redis v7.0.5 + WordPress v6.11 +生成新闻 v3.2.4 。 ?代码片段

  • AJAX搜索专业版
  • redis对象缓存专业版
  • 底层优化日志

    变更

    更新Rold环境RucDate PHP版本至7.4.33

  • 将MySQL升级至5.7。 40
  • Redis升级到7.0.5
  • Nginx升级到1.22.1
  • Nginx配置文件的优化(具体参见下面的说明)
  • 站长帮2023年WordPress网站优化日志:配置Nginx加强保护系统文件、禁止垃圾爬虫访问

    使用详细说明与普通Nginx配置文件匹配分配垃圾爬虫部分并拒绝访问,直接返回403:
    # 屏蔽垃圾爬虫
    if ($http_user_agent ~* (Scrapy|DotBot|python-requests)) {
    	return 403;
    }

    通过Nginx配置,提高WordPress系统文件的保护:

    # 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 今年发布的新版本改变了前端的设计思路块并激活一个新的容器块。更新后,可以用更少的 HTML 提供更多选项。

    之前使用GenerateBlocks时,我们觉得它们的HTML和CSS有点重复,所以大多数块都使用了额外的自定义CSS。我们现在已经删除了这部分,整个站点的自定义块已迁移到新的GenerateBlocks 1.7.x架构。

    Perfmatters 版本 2.0.6 引入了简化的 Analytics v4 统计代码,该代码已经过彻底测试并替换了默认的 Analytics v4 统计代码。

    将原来的关键路径CSS优化更改为删除未使用的CSS优化。如果您没有 WP Rocket 授权代码,您可以使用 Perfmatters 插件的删除未使用的 CSS 功能。

    Perfmatters 的这个功能与 WP Rocket 不太一样,但也非常好。

    WP Rocket 提取每个页面使用的 CSS 并单独发布,然后生成相应的 CSS 文件。未使用的 CSS 不会被重新加载。

    Perfmatters 提取每个页面使用的 CSS 并生成相应的 CSS 文件。仅从所有帖子中提取最近发布的内容并生成相应的 CSS 文件。通常所有帖子都会加载相同的 CSS(相同的模板),所以这不是问题。此外,Perfmatters 还提供了延迟加载未使用的 CSS 的功能,这可以确保首屏加载速度,而不会导致 CSS 兼容性问题。

    优化效果查看

    站长帮2023年WordPress网站优化日志:配置Nginx加强保护系统文件、禁止垃圾爬虫访问灯塔测试成绩站长帮2023年WordPress网站优化日志:配置Nginx加强保护系统文件、禁止垃圾爬虫访问Google检查结果站长帮2023年WordPress网站优化日志:配置Nginx加强保护系统文件、禁止垃圾爬虫访问百度抓取诊断

    版权声明

    本文仅代表作者观点,不代表Code前端网立场。
    本文系作者Code前端网发表,如需转载,请注明页面地址。

    发表评论:

    ◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

    热门