本文目录一览:
- 1、请问php在apache下运行有几种模式,区别是什么?该怎样设置,谢谢
- 2、请问什么是Module和Isapi?php在apache运行模式Apache module、cgi、Isapi有什么分别?
- 3、搭建PHP运行环境时为什么Apache总是运行不了,试了好多种集成软件都一样,该端口也不行,求解。
请问php在apache下运行有几种模式,区别是什么?该怎样设置,谢谢
Windows 下有两种方法使 PHP 工作于 Apache 2.0.x 之中。一种是 使用 CGI 可执行程序,另一种是适用 Apache 模块的 DLL。不管哪种都需要编辑 httpd.conf 来配置 Apache 支持 PHP 并重新启动服务器。
注: 记住在 Windows 下给 Apache 的配置文件中加入路径值的时候,所有的反斜线例如 c:\directory\file.ext 必须转换成正斜线,如 c:/directory/file.ext。
以 CGI 方式安装
需要将以下三行加入到 Apache 的 httpd.conf 配置文件中以设定 CGI: 例子 6-5. 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"
警告
如果使用 CGI 方式安装,则服务器对于某些可能的攻击是开放的。请阅读 CGI 安全一章以学习如何防御这些攻击。
以 Apache 模块方式安装
需要将以下两行加入到 Apache 的 httpd.conf 配置文件中以设定 Apache 2.0 的 PHP 模块: 例子 6-6. 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"
注: 记得用自己 PHP 实际所在的路径替换掉上例中的 c:/php/。要留意在 LoadModule 指令中用的是 php4apache2.dll 或 php5apache2.dll,而不是 php4apache.dll 或 php5apache.dll,后者是设计用于 Apache 1.3.x 的。
注: 如果要使用内容协商机制,请阅读有关 FAQ。
警告
不要在安装中混合使用来自不同 PHP 版本的 DLL。使用下载回来的 PHP 版本中所提供的 DLL 和扩展库是唯一选择。
请问什么是Module和Isapi?php在apache运行模式Apache module、cgi、Isapi有什么分别?
iis运行php有两种模式:isapi和fastcgi模式。
apache运行php有三种模式:cgi、fastcgi和apache模块。
============================================
iis: php5.3以前的版本支持isapi和fastcgi模式,现在只支持fastcgi模式。
apache:php依然支持fastcgi、cgi、apache模块三种模式。
============================================
iis如何配置支持上面两种模式:
isapi模式配置方法:操作简单,网上搜搜。注意:php5.3以前的版本支持。php5.4和php5.5都不支持。
fast-cgi模式配置方法:这个模式的配置,需要下载 fcgisetup_1.5_x86_rtw.msi这个软件,才能是iis支持fast-cgi.
apache如何配置支持上面三种模式:
apache模块模式:httpd.conf文件添加下面代码:
LoadModule php5_module "c:/php/php5apache2.dll"
fast-cgi模式:httpd.conf文件添加下面代码:
Action application/x-httpd-php "C:/php/php-cgi.exe"
注意:更改相应的路径。
cgi模式:由于现在很少使用,不用过多了解。
搭建PHP运行环境时为什么Apache总是运行不了,试了好多种集成软件都一样,该端口也不行,求解。
可能你原来安装过apache服务器或者其他服务器,没有卸载干净,所以端口还被占用着,你可以在新安装的apache的配置文件中给apache指派新的端口。或者卸载干净原来的东西。再或者你的apache配置有问题。查看一下日志文件就知道了。