Приложение узла 404 при попытке перейти на iisnode
Я пытаюсь перенести приложение nodejs со своего компьютера разработчика на наш сервер IIS. Он отлично работает на моей машине, но я всегда получаю 404 с при передаче его в IIS.
Структура каталогов выглядит так:
C:\Programs Files\iisnode\wwww
└ mysite
├ public
│ ├ app
│ ├ css
│ ├ js
│ └ index.html
├ web.config
└ server.js
Когда я иду в: localhost/node/mysite
Я получаю 404.
Вот содержимое моего web.config
:
<configuration>
<system.webServer>
<handlers>
<add name="iisnode" path="server.js" verb="*" modules="iisnode"/>
</handlers>
<!-- Tell iisnode where node.exe is located -->
<iisnode nodeProcessCommandLine="C:/Program Files/nodejs/node.exe"/>
<!-- Redirect all requests to server.js -->
<rewrite>
<rules>
<rule name="LogFile" patternSyntax="ECMAScript" stopProcessing="true">
<match url="^[a-zA-Z0-9_\-]+\.js\.logs\/\d+\.txt$"/>
</rule>
<rule name="NodeInspector" patternSyntax="ECMAScript" stopProcessing="true">
<match url="^server.js\/debug[\/]?"/>
</rule>
<rule name="StaticContent">
<action type="Rewrite" url="public{REQUEST_URI}"/>
</rule>
<rule name="DynamicContent">
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="True"/>
</conditions>
<action type="Rewrite" url="server.js"/>
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
Я попытался обновить свои экспресс-маршруты, добавив к ним префикс node/mysite
но это не сработало.
Я могу сказать, что узел получает запросы, потому что он настроен на запись всех запросов, и в файлах журнала есть следующее:
Server started on //.pipe/<some long code>
GET /node/mysite