我读了很多帖子说我不应该worker MPM
使用PHP
。
我的问题是这是否仍然有效或者是否worker MPM
不建议使用它。
我之所以问这个问题,是因为我看到 worker MPM 确实支持 PHP,而且我认为甚至有一个用于此目的的包,叫做php-zts
答案1
上次我尝试的时候(大概 6-12 个月前?),我仍然遇到了一些非常严重的问题,因为 apache 在某些虚拟主机上几次点击后就会挂起。回到 prefork mpm 解决了我的问题,所以我猜想这与 worker+php 有关,因此没有进一步调查。
从那时起,我听说 php fpm 现在已经稳定并合并到 php 代码库中...您可能想尝试使用 apache 2.4,但据说仍然存在非线程安全的问题:
“与以前版本的工作 MPM 一样,当 mod_php 与非线程安全的第三方 PHP 扩展一起使用时,此 MPM 的线程模型会导致问题。”
答案2
这取决于您要使用哪些 PHP 扩展。并非每个第三方 PHP 模块都保证是线程安全的,因此我认为在 PHP 中使用 prefork MPM 的建议仍然有效。