Я установил IISNode на сервер и последовал за руководством, чтобы запустить приложение hello world node.js, работающее с ним. Он отлично работает, и он доступен через Интернет через Интернет. Однако, когда я пытаюсь включить мое существующее экспресс-приложение, это похоже на node/express, даже там.Не удается получить express.js, работающий с IISNode
Это мой файл web.config:
<configuration>
<system.webServer>
<handlers>
<add name="iisnode" path="app.js" verb="*" modules="iisnode" />
</handlers>
</system.webServer>
</configuration>
То есть в корневом каталоге приложения IIS, наряду с app.js, которая является моим основным файлом экспресса. Что интересно, если я иду на локальный/TestApp/app.js, я вернусь:
Cannot GET /TestApp/app.js
Однако, если я попробовать другой файл, как локальный/TestApp/Public/HTM/index.htm, я получаю назад файл, который находится там (в HTML, как и ожидалось). Кроме того, если я попытаюсь выполнить вызов сервера (например, localhost/TestApp/GetUsernames).
Что еще более интересно то, что, если я испортить порт (например, app.listen (process.env.PORT2);), я получаю это когда я пытаюсь и LOCALHOST доступ/TestApp.js:
> iisnode encountered an error when processing the request. > > HRESULT: 0x2 HTTP status: 500 HTTP reason: Internal Server Error
Если порт правильно (app.listen (process.env.PORT2);), я не могу получить /TestApp/app.js, так что это будет выглядеть как IISNode выполняет app.js (как еще если бы я испортил порт), но ничего не работает.
Как я могу исправить это или, по крайней мере, диагностировать проблемы?
спасибо.