在我的Wordpress网站上,我在尝试登录时获得SyntaxError: Unexpected token <
。
使用带有AJAX登录的插件,问题非常奇怪。
当我将内存限制增加到128MB
(或64
或96
)时,问题就会消失,并且没有错误。
虽然这可能看起来像是一个“修复”,但我仍然不想知道那里有什么“错误”的错误&#39;应该修复。
问题在于我无法找到错误是什么,调试类似内容的最佳方法是什么,并确切地找出导致SyntaxError的脚本或插件或编码错误?
为什么它只会在内存下限较低的情况下发生?
答案 0 :(得分:0)
我知道我们一直在评论中反复讨论,但我想我会发布一个答案,因为SyntaxError
真的在烦我(我知道它与AJAX有关)所以我做了一些快速的谷歌搜索。
是的所有插件,你有多少帖子等都会堆积并增加WordPress使用的内存量(除非你需要超过256MB
,否则我不会担心)。 AJAX登录失败并出现语法错误的原因是因为它期望解析JSON对象(即{"success":false,"error":"User does not exist."}
),而实际上它可能会收到类似的东西(因为大多数默认的Apache配置都有完整的HTML页面)他们的标准错误消息):
<html>
<head>
<title>500 Internal Server Error</title>
</head>
<body>
Fatal error: Allowed memory size of 44040192 bytes exhausted (tried to allocate 30720 bytes).
</body>
</html>
当尝试将其解析为JSON时,当它遇到第一个SyntaxError
时,<
显然失败了。无论如何,我认为将内存限制提高到64MB
或126MB
并不是问题。