我一直在尝试理解加载php作为apache模块与其他模块的确切含义/目的。
当php作为apache模块安装时,到底会发生什么?例如,读取php-ini文件是在每次收到php请求时发生还是在单独加载php模块时发生?
发布于 2010-10-17 23:22:45
在mod_php、FastCGI和FPM中加载PHP模块时,将读取php.ini。在常规CGI模式中,配置文件必须在运行时读取,因为没有任何类型的预派生进程。
我认为在web服务器中将PHP作为一个模块运行的唯一真正优势是配置可能会更容易。当您在FastCGI或FPM模式下运行它,并且可以使用线程或事件(而不是forked) Apache时,或者当您可以完全丢弃Apache时,您可以获得更好的性能。
发布于 2011-09-14 22:29:59
这个链接可能会有帮助:http://2bits.com/articles/apache-fcgid-acceptable-performance-and-better-resource-utilization.html
结论
如果您追求的是纯粹的速度,那么请继续使用mod_php。
但是,为了更好地利用资源和提高效率,请考虑使用fcgid。
发布于 2010-10-17 23:25:01
如果是Apache模块,则在加载模块时读取php.ini。PHP CGI使用php解释器可执行文件,就像任何其他shell脚本一样。由于每次调用都不涉及状态,因此在使用CGI的情况下,每次都必须读取配置文件。
https://stackoverflow.com/questions/3953793
复制相似问题