用网站安全检测扫瞄博客 发现了一个漏洞 实际上就是直接访问主题路径的话 get_header()函数未生效(Call to undefined function get_header() ) 而我的WordPress会输出完整的错误信息 将敏感名称的目录结构暴露了 虽然对正常访问没有影响 可是会给某些人可乘之机 经常在博客后台看到很多人扫瞄博客各种路径或文件 尽可能多的解决漏洞 会大大增强网站安全性 秀一下我的博客安全性 分 没有漏洞 虽说只是表面的 但是我会发现一个解决一个!
成都创新互联公司专注于麦盖提企业网站建设,自适应网站建设,商城网站开发。麦盖提网站建设公司,为麦盖提等地区提供建站服务。全流程定制开发,专业设计,全程项目跟踪,成都创新互联公司专业和态度为您提供的服务
下面详细说明下我遇到的问题和解决方案 供参考
环境 linux vps + lnmp
完整错误信息如下
Fatal error: Call to undefined function get_header() in /网站根路径/izhangheng/wp content/themes/entyelve/ on line
解决方案 如果WEB应用程序自带错误处理/管理系统 请确保功能开启 否则按语言 环境 分别进行处理 如果是PHP应用程序/Apache服务器 可以通过修改php脚本 配置php ini以及中的配置项来禁止显示错误信息
修改php ini中的配置行: display_errors = off 修改中的配置行: php_flag display_errors off 修改php脚本 增加代码行: ini_set(‘display_errors’ false);
针对这个问题 仅不显示错误信息是不完美的 出错后跳转到首页 可以避免流量丢失 我的环境默认就关闭显示错误信息 只需要在有漏洞的页面源码前调用WordPress函数即可 首先进入到WordPress后台的外观中 比如编辑的是index php首页模版 将头部代码更改为下面的即可 注意所有符号为英文
代码如下 lishixinzhi/Article/program/PHP/201311/21108
1、进入虚拟主机控制台,进行数据库信息面板。
2、点击面板右边的变更数据库,在弹出窗口选择MySQL5点7或更高版本,点确认点击重置密码。
3、3最后一步,在高级环境设置的PHP版本设置,选择PHP5点5以上即可。
1. 错误原因之一:
wp-config.php文件里面的数据库连接的参数,如数据库名,用户名,数据库密码等,是否连接正确了.
2. 错误原因之二:
数据表的前缀,当你的网站文件是从其他地方转移过来的时候,看一下数据表的前缀,是否一致,如果数据表前缀不一致,还是会报数据库连接错误的。
3. 错误原因之三:
wp_options表需要修复,WordPress可能会出现这样的一个问最简单的解决的办法就是:在wp-config.php中增加一句代码:
define('WP_ALLOW_REPAIR', true);
然后直接访问后台http://域名/wp-admin/,按照wordpress的修复步骤操作即可。
4. 错误原因之四:
数据库服务器故障,这个问题就需要你去联系服务器提供商了,因此,选择一个好的服务器提供商很重要。