我有一个wordpress网站启动并运行相当受欢迎,但在过去几天我的表现已经非常糟糕。
我已经安装了Jet Profiler,并且一直在监视MySQL数据库,看看我是否能找到错误的内容,而且这个查询一直是最糟糕的攻击者。
SELECT SQL_CALC_FOUND_ROWS wp_posts.* FROM wp_posts WHERE 1=1 AND wp_posts.post_type = 'post' AND (wp_posts.post_status = 'publish') ORDER BY wp_posts.ID ASC LIMIT 0, 1
我的第一个猜测是删除SQL_CALC_FOUND_ROWS函数并将*更改为仅特定字段,但我找不到调用此查询的内容。
我如何找出哪个php文件正在调用它?
答案 0 :(得分:1)
很有可能是你的头版。我假设您已经使用WP Super Cache或其他内容(nginx,Squid等)在WordPress前安装了缓存。如果没有,你不应该看数据库。 Caching is critical for WP
答案 1 :(得分:1)
您可能需要查看其跟踪器上发布的这两个问题:
http://core.trac.wordpress.org/ticket/10469
http://core.trac.wordpress.org/ticket/12557
(更新:添加了链接)
答案 2 :(得分:0)
最终解决方案是一个名为TDO Mini Forms的插件编码错误并破坏了我的数据库。
因此,如果您遇到此问题并插入该插件,我强烈建议您将其删除。它似乎不再作为插件数据库中的有效选项存在