PHP 解释器和 PHP 处理程序有啥区别?

Posted

技术标签:

【中文标题】PHP 解释器和 PHP 处理程序有啥区别?【英文标题】:What is the difference between a PHP interpreter and a PHP handler?PHP 解释器和 PHP 处理程序有什么区别? 【发布时间】:2017-04-08 02:07:50 【问题描述】:

我是 Apache 和 php 的新手,我目前正在学习两者之间的交互。

我目前正在尝试了解 PHP 处理程序的工作,我在 cPanel 上使用 suPHP 并希望扩展我的知识。

【问题讨论】:

为什么这个问题被迁移到 SO? 【参考方案1】:

PHP 处理程序是 Apache 用来与 PHP 解释器通信的 Apache 模块。 Apache 基本上使用它来处理对 PHP 文件的请求。有不同类型的 PHP 处理程序。例如 mod_php 是 PHP 的 Apache 模块。 mod_fcgid 允许通过 TCP 或 Unix 套接字与 php_fpm 解释器进行通信。

PHP 解释器是一个一次执行一行 PHP 代码的应用程序。 PHP 解释器的输出被发送到 PHP 处理程序。此输出可能由其他 Apache 模块处理,例如 mod_deflate 或 mod_security。最终输出从 Apache 监听的 TCP 套接字发出。

SuPHP 是一个 Apache 模块,它允许在脚本所有者的权限下执行 PHP 脚本。通常 PHP 脚本是在 PHP 解释器的权限下执行的。 SuPHP 允许 PHP 文件具有自定义所有者和权限。然后,PHP 文件由拥有 PHP 文件的同一所有者执行。它在共享主机环境中非常有用,在这些环境中,属于不同用户的 PHP 文件需要由同一个 PHP 解释器执行。 SuPHP 允许 PHP 解释器以与 PHP 文件相同的权限执行 PHP 文件。

【讨论】:

以上是关于PHP 解释器和 PHP 处理程序有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章

PHP echo 和 PHP return 用纯英语有啥区别?

Wampserver 和Apmserv有啥区别?都分别做啥的?

[Linux]php+apache 和 php+nginx的区别

PEAR 和 Composer 有啥区别?

apache php 与nginx php 的区别

phpwamp和wampserver有啥关系,为啥名字都带wamp这几个字母,两者有区别吗?我应该用哪个?