Php 代码执行两次并导致 "Constant allready defined" 错误

Php code executes twice and causes "Constant allready defined" errors

最近我的应用程序开始抛出此类错误:

PHP Fatal error: Cannot redeclare {X Class} (previously declared in {X File: X line}) in {X File: X line}

经过一些调查,我得出的结论是 PHP 代码以某种方式被执行了两次。

为了确保,我使用以下代码创建了一个文件:

error_reporting(E_ALL);

define('SOMETHING', 'ITS OK');

echo SOMETHING;

die();

这就是文件的全部代码。但有时,在请求该文件时,会产生以下错误:

PHP Notice: Constant SOMETHING already defined in {Y File} on line 6

您知道哪种设置可能导致这种情况吗?

这个问题似乎更容易通过快速连续的请求重现,但它可能不限于那种情况,有时它似乎发生在单个请求上(但我不认为这是事实)

出现这个问题似乎是因为imunify360主动防御。 https://www.imunify360.com/proactive-defense。禁用主动防御 php 模块似乎可以解决问题。