我正在尝试设置Apache以使用PHP。它似乎起作用了,因为我可以从Apache中的htdocs中的"example"目录中运行一个文件index.php。但是,当我在phpinfo()屏幕上查看配置文件(php.ini)路径时,它与httpd.conf中的路径不匹配。此外,在php.ini文件中打开的模块也没有设置为启用。
所以我认为它没有得到我的php.ini。在phpinfo()屏幕上,它说路径是C:\Windows。
在Apache的conf目录中的httpd文件中,我有以下内容:
.
.
.
#LoadModule vhost_alias_module modules/mod_vhost_alias.so
LoadModule php5_module C:/php/php5apache2_2.dll
PHPIniDir "C:/php/"
所有这些文件都存在。然而,这甚至不是C:\Windows中的php.ini。
您可能会说,也许我的httpd.conf文件没有被读取。但是,如果我将php5_module行更改为类似的行
LoadModule php5_module C:/php/incorect.dll
Apache无法启动。所以这是正在阅读的。只是我的php.ini没有被读取。为什么?谢谢你的帮助!
EDIT:在phpinfo()屏幕上,加载的配置文件显示为(无)。甚至不确定这是在说什么,但只是对那些这样做的人有更多的了解。
哦,PHP版本是5.4.6。
第2版:Windows版本:Windows 7 ProfessionalService Pack:Service Pack 1
更改:
PHPIniDir "C:/php/"
收件人:
PHPIniDir "C:/php"
加载模块:
LoadModule php5_module "c:/php/php5apache2_2.dll"
添加PHP处理程序:
AddHandler application/x-httpd-php .php
更新目录索引(可选):
DirectoryIndex index.php index.html
在Path
变量的末尾包含"c:\php"。
SOLVED-不能是正斜杠,必须返回。采取
PHPIniDir "C:srvphp5_4_8"
我找到了一种在IIS 7:上正确安装它的方法
如果您使用64位,请将IIS设置为允许32位
cscript%SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1
设置环境变量
路径,例如C:\php\
PHPRC到,相同的目录
转到Web服务扩展:添加新的扩展。。。
例如,将其命名为php,并将其指向php5isapi.dll。
将状态设置为"允许"。
右键单击网站:
在选项卡ISAPIFilters上,例如php将其命名,并将其指向php5isapi.dll
然后转到主目录选项卡:
单击配置
在映射上,单击添加:
可执行文件为:php5isapi.dll扩展到:.php
单击确定,然后单击确定。
然后在"文档"选项卡上单击"添加:"
并在那里添加您想要作为默认加载的内容,比如index.php
然后停止并启动IIS。
这在Windows2003Server和WinXP64上对我有效。
我希望这也适用于你。
我的系统:Windows with apache 2.2, php 5.3
症状:PDO drivers not found.
我发现:phpinfo()显示php.ini文件是"C:Windows"
,尽管我希望它是apacheconf
中httpd.conf
文件中指定的"C:Program Files (x86)PHP"
httpd.conf
中的PHPIniDir
字符串出现问题,因此找不到我要使用的php.ini
文件。
失败:
PHPIniDir "C:Program Files (x86)PHP"
已工作:
PHPIniDir "C:Program Files (x86)PHP"
PHPIniDir "C:/Program Files (x86)/PHP"
PHPIniDir "C:/Program Files (x86)/PHP/"
注意:失败情况下的额外"\"。删除它,保存conf文件,然后重新启动apache。现在phpinfo应该显示php.ini文件来自"C:\Program Files(x86)\php",并且PDO驱动程序已经加载。
我也面临着同样的问题。
在我的案例中,问题是我将php.ini文件保存为文本文件。当我在记事本中将文本文件转换为"所有文件"并赋予其".ini"扩展名时,它就变成了"配置设置文件",它就工作了。
(在Windows上工作)
由于我运行的是Windows 7(Apache 2.2和PHP 5.2.17以及MySQL 5.0.51a),文件"httpd.conf"(C:\Program Files(x86)\Apache Software Foundation\Apache2.2\conf\httpd.conf)中的语法对斜杠非常敏感。我需要换
PHPIniDir 'c:PHP'
至
PHPIniDir 'c:PHP'
注意最后一个斜杠扰乱了一切