为什么php扩展由apache提供,而带有专有扩展名的php文件由FPM/FastCGI提供?

为什么php扩展由apache提供,而带有专有扩展名的php文件由FPM/FastCGI提供?,php,apache,session,fpm,Php,Apache,Session,Fpm,在最近的PHP更新之后,我们遇到了两个文件之间的会话丢失的问题。这两个文件的扩展名不同,但都是PHP。经过研究,我们发现.php文件是在php版本7.3.22中提供给服务器API Apache 2.0的。但是,在PHP版本7.3.22中,服务器API FPM/FastCGI也提供专有扩展(pext)。我们假设这就是会话未被转移的原因 我们在htaccess中使用此规则来获得作为PHP的专有扩展: AddType应用程序/x-httpd-php.php.pext 我们想知道如何设置,以便两个扩展都

在最近的PHP更新之后,我们遇到了两个文件之间的会话丢失的问题。这两个文件的扩展名不同,但都是PHP。经过研究,我们发现.php文件是在php版本7.3.22中提供给服务器API Apache 2.0的。但是,在PHP版本7.3.22中,服务器API FPM/FastCGI也提供专有扩展(pext)。我们假设这就是会话未被转移的原因

我们在htaccess中使用此规则来获得作为PHP的专有扩展:

AddType应用程序/x-httpd-php.php.pext


我们想知道如何设置,以便两个扩展都由相同的服务器API提供服务,以便可以共享会话数据。

找到它:从PHP7.2创建另一个php.conf文件:php72-php.conf,它不复制以下设置

SetHandler代理:fcgi://php-fpm

因此,按照默认设置,新的php.conf将服务器API Apache设置为php,pext保留在FPM中。添加上述内容并重新启动FPM和Apache后,一切正常,会话再次共享