我已按照此github页面上提到的步骤操作。但即使在完成上述所有操作之后,我仍然在尝试运行由issnode包附带的setupsamples.bat文件安装的示例应用程序时出现内部服务器错误。
我附上了截屏和相关的代码文件。
这是hello.js文件
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/html'});
res.end('Hello, world! [helloworld sample; iisnode version is ' + process.env.IISNODE_VERSION + ', node version is ' + process.version + ']');
}).listen(process.env.PORT);
web.config文件
<configuration>
<system.webServer>
<!-- indicates that the hello.js file is a node.js application
to be handled by the iisnode module -->
<handlers>
<add name="iisnode" path="hello.js" verb="*" modules="iisnode" />
</handlers>
</system.webServer>
</configuration>
答案 0 :(得分:2)
这是因为您在服务器级别的配置在站点级别上是不可覆盖的。由于您要添加处理程序,我假设它是需要解锁的处理程序配置。您应该可以从iis配置程序中执行此操作,或者您可以使用appcmd将其解锁。
您可以在此处详细了解:http://www.iis.net/learn/get-started/planning-for-security/how-to-use-locking-in-iis-configuration
http://www.tomdupont.net/2012/10/how-to-unlock-configuration-section.html
答案 1 :(得分:0)
希望我参加晚会不会太晚。我以前遇到过同样的问题。 导致此问题的最可能原因是您未安装IIS URL重写模块。此模块不是标准IIS安装的一部分。您必须从以下位置明确安装:
http://www.iis.net/downloads/microsoft/url-rewrite
只需安装扩展程序,现在就可以了
答案 2 :(得分:0)