Iis Can';t保存php.ini

Iis Can';t保存php.ini,iis,windows-7,php,Iis,Windows 7,Php,我通过Web平台安装程序在Windows7上安装了PHP for FastCGI。我需要编辑php.ini以启用日志记录,但我无法覆盖现有文件,显然是因为有东西打开和/或锁定了它 在IIS管理器中停止服务器没有帮助;停止Windows Process Activation服务和万维网发布服务没有帮助phpinfo()确认我使用的是正确的文件(C:\Program Files(x86)\PHP\PHP.ini)。它没有标记为只读,我确实有权限。我没主意了。您可以使用Sysinternals(现在是

我通过Web平台安装程序在Windows7上安装了PHP for FastCGI。我需要编辑php.ini以启用日志记录,但我无法覆盖现有文件,显然是因为有东西打开和/或锁定了它


在IIS管理器中停止服务器没有帮助;停止Windows Process Activation服务和万维网发布服务没有帮助
phpinfo()
确认我使用的是正确的文件(C:\Program Files(x86)\PHP\PHP.ini)。它没有标记为只读,我确实有权限。我没主意了。

您可以使用Sysinternals(现在是Microsoft的一部分)的查找句柄功能(直接EXE下载链接)来查找锁定文件的确切原因


很抱歉,我不能帮你回答确切的问题,但希望这能有所帮助

根据您试图写入文件的内容,您可以改为写入站点根目录上的“.htaccess”文件。如果你愿意,我可以提供一个更具体的例子

您也可以使用来解决这个问题。这很痛苦,但无论如何,该实用程序都非常方便,所以随身携带不会有任何伤害。

试试以下方法:

  • 停止Web服务器
  • 更改文件
  • 启动Web服务器

  • 如果这不起作用,那么您可能更改了错误的文件。原始文件可能在别处,服务器启动时会将其复制到C:\Program Files(x86)\PHP\PHP.ini。phpinfo()可能指向每次被覆盖的文件…

    另一个选项是将文件文本复制到不同位置的新文件中,进行更改,将文件另存为“php.ini”。然后复制新文件,覆盖旧文件。资源管理器可能会以不同的方式处理权限。

    我遇到了这个问题,并设法解决了它。您需要以管理员的身份运行编辑器(记事本或任何东西)

    在WindowsVista/Windows7中,右键单击并选择“以管理员身份运行”。
    然后打开php.ini并编辑它…

    在Windows 7中,右键单击记事本并选择“以管理员身份运行”。确保不要使用记事本++作为编辑器。它访问此文件,因此告诉您有错误


    默认的记事本可以很好地使用这些说明。

    我也遇到过类似的问题,我使用的是windows 10,它不使用“以管理员身份运行”

    这就是我所做的:

  • 右键单击问题文件并转到属性
  • 转到选项卡安全
  • 单击“编辑”,它应该有一个屏蔽
  • 在组名中选择:用户(计算机特定信息\用户)
  • 在其下方的方框中,您可以编辑文件
  • 这使得它允许您为用户编辑文件,而不再遇到问题。这也消除了该文件将来出现的问题,因此您只需在文本编辑器中打开该文件,即可再次编辑该文件


    请注意,我是荷兰人,某些名字翻译错误。

    就是这样!当您向程序文件写入内容时,Windows似乎希望您提升为管理员,但记事本和记事本++都没有聪明到足以告诉我这一点。希望以后在Windows上,php.ini将位于ProgramData中,而不是程序文件中…在Windows 8中搜索记事本,右键单击它并选择“以管理员身份运行”,然后单击文件,然后打开您的php.ini,它仅代表“php”名称,然后修改并保存它。