对于PHP(或I_USER [我不知道这里...])设置权限连接到Iisweb.vbs将(Setti

2019-08-18 19:28发布

我一直在试图找出一种方法来管理我们的工作领域和轻松创建一个SimpleDNS类,但现在我在它的IIS服务器管理端,我只是失去了是怎么回事。

这是我正在测试它的PHP代码。

<?php
$cmd = 'iisweb /create c:\websites\examplesite.com\www "Example Domain!" /d www.examplesite.com';

exec($cmd,$data);
print_r($data);
?>

但是,当我运行它,我得到:

Array ( [0] => Error &H80041003: Access denied

我如何设置权限为这个完全难住了。

这里的很大一部分! 当我运行<?php exec('ping google.com',$data);?>:它无缝工作。

我不知道在哪里,当谈到设立的Iisweb.vbs将在权限(Iisweb将VBS文件)来启动。 我甚至不知道我应该设置权限在该文件上。 我不知道我应该设置在控制台中的CGI选项。 我迷路了。

有人可以帮我吗? 我在这是要干嘛?

Answer 1:

您的代码将两种身份中的一个下运行。

  1. 该应用程序池的身份,该网站(例如网络服务如果使用默认值)运行。 您可以通过打开的属性窗口的应用程序池,并选择标识选项卡上发现这一点。

  2. >目录安全性 - - 网站匿名用户的,你可以在网站属性找到身份>身份验证和访问控制(单击编辑按钮)。

FastCGI的

如果你正在运行的FastCGI下的PHP和c:\php\php.ini配置值fastcgi.impersonate = 1那么用户身份是网站的匿名用户以上(选项2)。 如果fastcgi.impersonate = 0然后PHP脚本将根据应用程序池(选项1)的身份执行。

如果PHP被配置为通过看的FastCGI下执行你可以告诉.php ( - >主目录- >配置- >应用程序扩展网站属性)对站点脚本映射。 如果它被设置为C:\WINDOWS\system32\inetsrv\fcgiext.dll那么你正在运行的FastCGI。

没有的FastCGI

如果您.php脚本映射未配置为使用C:\WINDOWS\system32\inetsrv\fcgiext.dll然后脚本将在该网站的匿名用户(上面的选项2)的身份运行。

在所有情况下使用必须有管理员权限的帐户才能够运行在IIS管理脚本。



文章来源: Setting permission for PHP (or I_USER [I'm not sure here…]) to connect to iisweb.vbs
标签: php iis cmd exec