【问题标题】:PHP exec on Windows Server 2008Windows Server 2008 上的 PHP 执行
【发布时间】:2009-08-19 06:03:27
【问题描述】:

我已在 Windows Server 2008 上的 IIS 中将 PHP 作为模块安装,但在尝试从 PHP 脚本中执行命令行程序时遇到了很大的困难。

我可以使用 php-cgi.exe 和 php-cli.exe 很好地执行 PHP 代码,这让我相信这可能是权限问题。

但是,我可以执行一些命令,例如 shutdown.exe 和 dir。

我在 ASP.NET 文件中尝试了相同的过程,但遇到了完全相同的问题。

基本上,我想这样做:

exec("exe 文件的路径");

并且真的让它发挥作用。

【问题讨论】:

    标签: php windows


    【解决方案1】:

    试试

    exec('path-to-exe-file 2>&1', $output);
    var_dump($output);
    

    2>&1 部分应该将错误消息重定向到标准输出(在 win32 上也是如此),因此应该显示在 $output 中。

    【讨论】:

      【解决方案2】:

      我花了几个小时才意识到出了什么问题……

      使用 IIS 管理器,应用程序池,选择与您的应用程序关联的池并确保:

      ProcessModel.Identity = LocalSystem

      ProcessModel.Load 用户配置文件 = true

      【讨论】:

        猜你喜欢
        • 2012-10-15
        • 1970-01-01
        • 2013-03-26
        • 1970-01-01
        • 1970-01-01
        • 2010-12-06
        • 2013-01-03
        • 2013-02-14
        • 1970-01-01
        相关资源
        最近更新 更多