3 回答
TA贡献2019条经验 获得超9个赞
PHP在Apache中两种工作方式(CGI模式、Apache模块DLL)
PHP在Apache中两种工作方式(CGI模式、Apache模块DLL)
PHP在Apache中有两种工作方式:一种是 使用 CGI 可执行程序,另一种是适用Apache 模块的 DLL。
这两种工作方式的安装:
1. CGI方式
PHP 在 Apache 2.0 中的 CGI 方式
ScriptAlias /php/ "c:/php/"
AddType application/x-httpd-php .php
# 对 PHP 4 用这行
Action application/x-httpd-php "/php/php.exe"
# 对 PHP 5 用这行
Action application/x-httpd-php "/php/php-cgi.exe"
2. APACHE Module方式
PHP 在 Apache 2.0 中的模块方式
# 对 PHP 4 用这两行:
LoadModule php4_module "c:/php/php4apache2.dll"
# 别忘了从 sapi 目录中把 php4apache2.dll 拷贝出来!
AddType application/x-httpd-php .php
# 对 PHP 5 用这两行:
LoadModule php5_module "c:/php/php5apache2.dll"
AddType application/x-httpd-php .php
# 配置 php.ini 的路径
PHPIniDir "C:/php"
这两种工作方式的区别:
在CGI模式下,如果客户机请求一个php文件,Web服务器就调用php.exe去解释这个文件,然后再把解释的结果以网页的形式返回给客户机;
而在模块化(DLL)中,PHP是与Web服务器一起启动并运行的。所以从某种角度上来说,以apache模块方式安装的PHP4有着比CGI模式更好的安全性以及更好的执行效率和速度。
TA贡献1871条经验 获得超8个赞
不要使用普通的CGI模式安装,每个PHP进程默认占128MB内存,几G内存也最多百来人访问就击垮了。
CGI模式是早期内部小网站的模式,现在一般用于开发时方便调试。
部署PHP应该使用FastCGI方式或者ISAPI方式安装,就不会产生多进程和资源占用过多。
TA贡献1796条经验 获得超4个赞
用Module吧~~~在php目录中install.txt里有。
使用Apache设置。
LoadModule php4_module "c:/php/php4apache2.dll"
# Don't forget to copy the php4apache2.dll file from the sapi directory!
AddType application/x-httpd-php .php
# For PHP 5 do something like this:
LoadModule php5_module "c:/php/php5apache2.dll"
AddType application/x-httpd-php .php
# configure the path to php.ini
PHPIniDir "C:/php"
添加回答
举报