2010-05-10 89 views
0

我有一个.NET库作为我们网站的一部分执行,它将HTML呈现为图像格式。它使用IE渲染引擎,并且如果有呈现的话,会很高兴地运行任何javascript。Javascript在IIS上不起作用

澄清。代码将HTML呈现到服务器上。没有客户参与。

问题是我们只是将代码移动到一个新的服务器,并且JavaScript似乎被禁用。 。

我试着从网络服务改变(简单的应用程序池进程模型标识为本地,并且工作得很好

因此,它必须是一个权限问题

另一个澄清:一切正常ALWAYS除javascript。换句话说,只要HTML中没有JS,我们可以将URL传递给IE呈现引擎并获取位图。如果JS在HTML中,则HTML呈现为JS被禁用,除非我们是泳池标识=本地系统。)

所以我的问题是这样的:

1)我需要设置哪些特定权限才能让IE呈现引擎在IIS应用程序池内执行javascript?

2)在我的应用程序池中启用它的最佳方式是什么?我只是以某种方式将其设置在NetworkService中,或创建一个新的标识(这是如何完成的?)

谢谢!

+1

只是为了澄清,你的JavaScript运行在客户端或服务器上? – Midhat 2010-05-10 15:08:14

+1

这听起来像这是通过利用IE作为服务器组件在服务器上运行的JS。准确地说是 – mattbasta 2010-05-10 15:16:09

+1

。 JS正在服务器上的IE组件上运行。生成的位图结束于服务器中。 – 2010-05-10 17:34:39

回答

0

我猜“使用IE渲染引擎”是指“C:\ Program Files \ Internet Explorer \ iexplorer.exe”,因此应用程序池标识需要在此路径上具有执行权限。

如果您想授予此权限,请不要允许Network Service执行此操作。创建一个特定的身份(例如新的本地用户)并授予其访问权限以运行IIS工作进程(IIS 6上的IIS_WPG组)。