您现在的位置是:首页 > 网站制作 > WordpressWordpress
WordPress遇到PHP致命错误的解决办法“PHP Fatal error: Uncaught Error: Call to undefined function get_header()”
杰帅2023-07-05【Wordpress】人已围观
简介在进行站点维护WordPress站点的时候发现日志中经常出现一个错误:PHP Fatal error: Uncaught Error: Call to undefined function get_header().....等,也就是php的致命错误。直接翻译就是访问时得到调用未定义函数的错误。如何进行解决及修复呢?这里搬主题就给大家分享一下解决方案。
搬主题在进行站点维护WordPress站点的时候发现日志中经常出现一个错误:PHP Fatal error: Uncaught Error: Call to undefined function get_header().....等,也就是php的致命错误。直接翻译就是访问时得到调用未定义函数的错误。如何进行解决及修复呢?这里搬主题就给大家分享一下解决方案。
什么是调用未定义函数错误?
这是一个直接针对主题的致命错误,也就是你安装了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(); ?>
如下效果
进阶保护
为了进一步发展,你可以通过限制目录视图来保护重要文件。让我们考虑一个例子:当你通过浏览器访问父目录时,你是否启用了目录视图。如果是的话,你会得到一个链接的文件列表,这不是好事。
要么你看到一个空白的屏幕,也许是一些其他的信息。你将需要保持你的文件安全。为了限制目录视图,你将需要创建第一个空文件index.php文件,以你想禁用的为准。
要禁止该代码,请这样做。 <!–?php // Silence is golden.</p> <p>WordPress使用这种技术已经很长时间了,以防止黑客/攻击者。如果你在访问WordPress时遇到任何麻烦,你应该试试这个。</p>
最后总结
正如你所看到的,这里已经分享了一个简单而有效的方法来防止网页被攻击者/黑客攻击。在这个技术中,不用太专业的能力,如果你还是不清楚,那么添加一个合适的插件,以获得更好的安全性。
Tags:PHP SSH教程 WordPress WordPress教程
很赞哦! ()
相关文章
- OpenLiteSpeed禁用xmlrpc.php 避免DDoS攻击
- WordPress前端页面加载优化加速合集 网站秒开秘籍
- WordPress登陆用户和普通访客显示不同菜单设置图文教
- 什么是拒绝服务攻击?WordPress网站防范DDoS攻击的方法
- 安装Elementor Pro插件后提示PHP Warning: Undefined
- WordPress安装/更新插件后报错“a padding to disable
- 修改WordPress文章及附件图像URL教程
- Zblog转换为WordPress最简单的方法教程
- PHP 致命错误:未知:打开所需的wordfence-waf.php失败解
- 关闭/禁用WordPress站点管理员电子邮件验证教程
随机图文
-
wordpress发布文章HTML标签被自动过滤掉该如何处理?
wordpress发布文章时很多html标签都会自动过滤掉,造成了文章中无法添加<style></style><script></script>等标签。那么该如何如何处理呢? 解决方法一: 将wp-includes文件夹下 -
wp_reset_postdata 和 wp_reset_query 的作用与区别
什么时候使用wp_reset_query,什么时候用wp_reset_postdata? -
WordPress 页面模板(Page Template)下拉列表不显示的原因及解决方法
WordPress 的自定义页面模板是一个非常强大好用的功能,使用它新建一些静态页面(Page),添加上一些数据调用的函数,再在网页上做一个导航连接到对应的页面就可以实现很多自定义的功 -
wordpress 上传的图片不显示的问题 base64,data:image/gif