首页 > 解决方案 > How to correct IISNode HTTP 500 substatus 1002 process request error

问题描述

I am getting the following error when trying to host an application in Windows IIS using IISNode.

iisnode encountered an error when processing the request.

HRESULT: 0x2
HTTP status: 500
HTTP subStatus: 1002
HTTP reason: Internal Server Error

You are receiving this HTTP 200 response because 
system.webServer/iisnode/@devErrorsEnabled configuration setting is 'true'.

In addition to the log of stdout and stderr of the node.exe process, 
consider using debugging and ETW traces to further diagnose the problem.

The last 64k of the output generated by the node.exe process 
to stderr is shown below:

Application has thrown an uncaught exception and is terminated:

Error: EPERM: operation not permitted, lstat 'C:\path\to\project'

at Object.fs.lstatSync (fs.js:893:18)
at Object.realpathSync (fs.js:1527:21)
at toRealPath (module.js:132:13)
at Function.Module._findPath (module.js:180:22)
at Function.Module._resolveFilename (module.js:470:25)
at Function.Module._load (module.js:420:25)
at Module.require (module.js:500:17)
at require (internal/module.js:20:19)
at Object. (C:\Program Files\iisnode\interceptor.js:210:1)
at Module._compile (module.js:573:32)

I have tried changing the server to listen on process.env.PORT and am still having issues.

And also setting

<rewrite>
  <rules>
    <rule name="sendToNode">
      <match url="/*" />
      <action type="Rewrite" url="server.js" />
    </rule>
  </rules>
</rewrite>

<iisnode 
  nodeProcessCommandLine="&quot;%programfiles%\nodejs\node.exe&quot;"
  interceptor="&quot;%programfiles%\iisnode\interceptor.js&quot;"
/>

in the web.config file.

标签: node.jsiisnpm

解决方案


运行npm cache clear --force解决了这个问题。


推荐阅读