PHP应该和Apache 1.3.x配合还是应该和Apache 2.x配合?
2004-10-31 23:25
567 查看
Apache 2.x已经发布很长时间了,很多情况下都推荐使用2.x,而不是1.3.x。
可是在PHP官方的Manual中,却明确指出:
这是为什么?
这个讨论可以解释一些问题 http://simon.incutio.com/archive/2004/03/31/phpAndApache2
大体说来,Apache 2可以编译成multi-threading模式,而PHP的一些东东不是thread-safe的,所以不推荐在multi-threading模式下的Apache使用。换句话说,如果把Apache2编译成为multi-processes 模式,PHP应该是可以正常工作的。至于multi-processes下的Apache2工作效率和1.3.x相比到底如何,我想应该不会太差吧。
在PHP的Manual里专门提到:
假如您要编译一个多线程版本的 Apache 2.0,您必须覆盖标准的 MPM-Module prefork,或者 worker 或者 perchild。要这样,您需要......使用 --with-mpm=worker 或者 --with-mpm=perchild 选项。之前您需要了解您正在做什么。更多信息请参考 Apache 文档中关于 MPM-Modules 的部分。
注: 要编译多线程版本的 Apache,您的系统必须支持多线程。这也意味着需要将 PHP 编译为正处在试验阶段的 Zend Thread Safety (ZTS)。因此并不是所有的扩展都可以使用了。推荐编译 Apache 使用标准的 prefork MPM-Module。
嗯,回头可以去看看ZTS。还有,不知道PHP5怎么样。
可是在PHP官方的Manual中,却明确指出:
警告 |
在企业级应用中无论是 Unix 还是 Windows 都不要使用 Apache 2.0 和 PHP 的组合。 |
这个讨论可以解释一些问题 http://simon.incutio.com/archive/2004/03/31/phpAndApache2
大体说来,Apache 2可以编译成multi-threading模式,而PHP的一些东东不是thread-safe的,所以不推荐在multi-threading模式下的Apache使用。换句话说,如果把Apache2编译成为multi-processes 模式,PHP应该是可以正常工作的。至于multi-processes下的Apache2工作效率和1.3.x相比到底如何,我想应该不会太差吧。
在PHP的Manual里专门提到:
假如您要编译一个多线程版本的 Apache 2.0,您必须覆盖标准的 MPM-Module prefork,或者 worker 或者 perchild。要这样,您需要......使用 --with-mpm=worker 或者 --with-mpm=perchild 选项。之前您需要了解您正在做什么。更多信息请参考 Apache 文档中关于 MPM-Modules 的部分。
注: 要编译多线程版本的 Apache,您的系统必须支持多线程。这也意味着需要将 PHP 编译为正处在试验阶段的 Zend Thread Safety (ZTS)。因此并不是所有的扩展都可以使用了。推荐编译 Apache 使用标准的 prefork MPM-Module。
嗯,回头可以去看看ZTS。还有,不知道PHP5怎么样。
相关文章推荐
- 关于Beehive的讨论 Apache Beehive开放源代码项目
- XML入门--XML文档规则
- apache2.0.48+php5beta2 for win2ksvr安装方法
- WINXp下配置apache2.0.52+php5.0.2+mysql4.0.21+perl
- APACHE如何忽略URL大小写
- RH9下Apache2.0.52+mysql-4.0.21+php-5.0.2
- Hibernate入门 - 包作用详解
- APACHE2.0.52安装
- 配置Apache James邮件服务器
- Apache mod_include_exp
- 在linux下安装Apache 2、PHP5.0.0、Sybase ASE 12.5
- Apache Module: CustomLog
- 利用apache-commons-fileupload写jsp上传文件
- Apache运用小技巧
- apache的..%5c漏洞原因源代码分析
- apache_jboss端口的调整
- Windows+Apache Web Server+PhpMySqladmin
- FreeBSD上Apache+php+mysql+GD的正确安装
- Subversion权限文件AuthzSVNAccessFile示例
- 用Apache实现虚拟主机服务