天涯论坛

 找回密码
 立即注册
搜索
查看: 21|回复: 1

WordPress遇到PHP致命错误的处理办法Call to undefined function

[复制链接]

3032

主题

312

回帖

9909万

积分

论坛元老

Rank: 8Rank: 8

积分
99099078
发表于 2024-10-4 12:13:32 | 显示全部楼层 |阅读模式

搬主题在进行站点守护WordPress站点的时候发掘日志中经常显现一个错误:PHP Fatal error: Uncaught Error: Call to undefined function get_header().....等,便是php的致命错误。直接翻译便是拜访时得到调用未定义函数的错误。怎样进行处理及修复呢?这儿搬主题就给大众分享一下处理方法

原文链接:WordPress遇到PHP致命错误的处理办法“PHP Fatal error: Uncaught Error: Call to undefined function get_header()” - 搬主题

什么是调用未定义函数错误?

这是一个直接针对主题的致命错误,便是你安装了WordPress主题的话,她们会收到一个指向你的主题目录的URL。好吧,有非常多办法能够得到这些信息。让我用一个例子来解释。大都数主题包含JavaScript文件、CSS和URL的链接。

垃圾爬虫黑客会向流行的WordPress主题文件如index.php或header.php发送请求。这般一来,请求文件就会将安全隐患泄密,这是一个重点的攻击。这诱发了调用未定义函数错误。例如非常多时候有些黑客直接攻击你的wp-login.php文件,当然你实质能够容易地修复它。

换句话说,你能够说当一个用户请求header.php文件时,任何重要的函数如exc_url()都是不可用的,由于它是在WordPress之外。这种状况出现由于WordPress核心被加载,加载的是模板文件。

这可能是因为垃圾爬虫和取决于你的主题,它是怎样编码的,这可能是因为欠好的操作或脱离上下文执行的代码。

检测网站是不是受到攻击?

首要,你需要检测你的网站是不是有受到攻击。要检测这个错误,请看错误日志。例如说。发掘的错误类似如下

[STDERR] PHP Fatal error: Uncaught Error: Call to undefined function get_header() in /www/www.banzhuti.com/wwwroot/wp-content/themes/qux/index.php:2

倘若你的网站显现这种类型的错误,这寓意着你的网站被垃圾爬虫或黑客盯上或攻击了。你能够看到非常多类型的这类错误。在这个例子中,你能够看到index.php,404.php,和header.php。经过科研和从源自得到的评论,非常多人在WordPress文件中看到这种错误,而不是例子。

查看这些: /archive.php/Wp-includes/rss-functions.php...各样主题模板文件...WP媒介库中的各样文件

基本上说,从WordPress核心、插件或文件的直接拜访会触发一个错误。为认识决这个问题,咱们分享认识决调用未定义函数错误的办法,以加强你的主题的整体安全性。

问题出在哪里?

- 倘若你试图登录到你的WordPress账户。

- 倘若已然更新了WordPress。

- 倘若你收到这个信息;is_network_admin()错误信息或 "致命错误,未定义函数is_network_admin()"

怎样修复调用未定义函数的致命错误?

处理这种类型的错误的一个最有效和最简单的办法是,倘若WordPress不可用,就退出该脚本。这是一个有效的、众所周知的处理这个问题的技术。

换句话说,倘若ABSPATH常数不是确定的,就退出脚本。ABSPATH在WordPress被加载时起功效。当垃圾爬虫来请求一个主题模板时,它就会给出一个空白页。

例如说:

<? php if (!defined (‘ABSPATH’) exit ;?>

你在WordPress会话时期看到过这般的代码。守护直接脚本拜访的PHP安全是至关重要的。毕竟,你不需要网站上的爬虫/攻击者。

因此,要退出脚本,你需要根据给定的方式。

首要打开任何你自己的WordPress主题文件,而后在文件的顶部包含给定的一行。当你没法拜访或退出脚本时,你会看到给定的代码。

<? php if (!defined(ABSPATH)) exit; get_header(); ?>

如下效果

进阶守护

为了进一步发展,你能够经过限制目录视图来守护重要文件。让咱们思虑一个例子:当你经过浏览器拜访父目录时,你是不是启用了目录视图。倘若是的话,你会得到一个链接的文件列表,这不是好事。

要么你看到一个空白的屏幕,许是有些其他的信息。你将需要保持你的文件安全。为了限制目录视图,你将需要创建第1个空文件index.php文件,以你想禁用的为准。

要禁止该代码,请这般做。 <!–?php // Silence isgolden.</p> <p>WordPress运用这种技术已然长期了,以防止黑客/攻击者。倘若你在拜访WordPress时遇到任何麻烦,你应该试试这个。</p>

最后总结

正如你所看到的,这儿已然分享了一个简单而有效的办法来防止网页被攻击者/黑客攻击。在这个技术中,不消太专业的能力,倘若你还是不清楚,那样添加一个合适的插件,以得到更好的安全性。





上一篇:无密PHP+Go研发仿简书实战高并发高可用微服务架构醉里挑灯看剑
下一篇:马来西亚今年或放宽中国游客落地签证?大马部长拿督莫哈末丁:非常有信心!
回复

使用道具 举报

2986

主题

3万

回帖

9956万

积分

论坛元老

Rank: 8Rank: 8

积分
99569168
发表于 2024-10-11 00:02:45 | 显示全部楼层
期待你更多的精彩评论,一起交流学习。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

站点统计|Archiver|手机版|小黑屋|天涯论坛 ( 非经营性网站 )|网站地图

GMT+8, 2024-11-22 23:19 , Processed in 0.128372 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.