Iis 7 安装windows 7时未读取php.ini
我已经在Windows7机器上成功安装了php,但我无法让它读取php.ini文件 我已经取消了php使用mysql的注释,当我运行phpinfo()时,它从未出现过 我已经检查过,以确保在我的整个c:\驱动器上只有一个php.ini文件,并且它位于我的c:\ windows文件夹中 有没有其他人遇到过这种情况,并且知道一种让php读取.ini的解决方案,这样我就可以启用一些扩展(mysql等)?检查以下内容:Iis 7 安装windows 7时未读取php.ini,iis-7,windows-7,php,Iis 7,Windows 7,Php,我已经在Windows7机器上成功安装了php,但我无法让它读取php.ini文件 我已经取消了php使用mysql的注释,当我运行phpinfo()时,它从未出现过 我已经检查过,以确保在我的整个c:\驱动器上只有一个php.ini文件,并且它位于我的c:\ windows文件夹中 有没有其他人遇到过这种情况,并且知道一种让php读取.ini的解决方案,这样我就可以启用一些扩展(mysql等)?检查以下内容: 确保只有一个php.ini文件。它应该与php.exe、php cgi.exe和ph
php.ini
文件。它应该与php.exe
、php cgi.exe
和php win.exe
位于同一文件夹中。值得检查您的c:\windows
和c:\windows\system32
文件夹。如果您在那里或路径
上除php安装文件夹以外的任何地方发现php.ini
,请删除它们
检查这一点的一个简便方法是从命令提示符运行where php.ini
PATH
:例如-c:\PHP
和c:\PHP\ext
php.ini
文件,并确保extension\u dir
指令指向extensions文件夹:extension\u dir=c:\php\ext
ext/
。例如:
extension=ext/php\u mysql.dll
您没有指明是否使用FastCGI来启动PHP
如果您只是将.php
扩展直接映射到php cgi.exe
,或者您使用的是FastCGI,但没有指定monitorChangesTo
属性,那么您需要杀死任何php cgi.exe
进程,以在任何更改后强制重新读取php.ini
(或者执行IISRESET
)
如果您在Windows 7(或通常的IIS 7.5)上使用FastCGI,那么只要
php.ini
文件发生更改,您就可以通过在monitorChangesTo
属性中指定指向php.ini
文件的路径来触发FastCGI的回收。这也可以通过FastCGI设置小程序下的IIS管理器进行配置。我遇到了完全相同的错误。当我尝试从命令行运行php-m时,它正在启动相应的模块,因此我知道正在加载正确的php.ini
然而,在Web服务器上,无论我做了什么更改,它都会不断地将我的php根文件夹作为扩展目录_dir
我做了几件事,似乎都解决了
首先,我确保我的扩展名路径具有IIS_用户读取权限。我不知道这是否与它的工作有关,因为它本身没有任何作用
第二,我回到IIS管理器,加载了最初用于设置php处理程序以使用FastCGI的处理程序映射。我不需要实际更改任何内容,但通过打开对话框并保存它,它要求确认。
之后,我回到我的phpinfo()页面,它调出了关于扩展目录的正确信息
我希望这对以后的人有所帮助。升级我的php版本后遇到了同样的问题,忘记了我更改了文件夹名称。因此,在处理程序映射中,确保FastCGI模块上的可执行文件路径正确