Запуск node js приложения на iis

Теги: node js, iis

Установка Node Js

  1. Устанавливаем nodejs https://nodejs.org/en/ (я ставил 6.10.2 LTS)
  2. https://github.com/tjanczuk/iisnode - от сюда устанавливаем расширение для iis (iisnode)
  3. Чтобы была возможность отладки приложения можно установить https://github.com/node-inspector/node-inspector

Настройка IIS

1. https://www.iis.net/downloads/microsoft/url-rewrite устанавливаем расширение для iis

2. Если будут проблемы с установкой, то нужно проделать следующее

  1. Откройте Regedit> HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ InetStp
  2. Edit «MajorVersion» и установите «DECIMAL» значение 9
  3. Нажмите F5 в Regedit
  4. Теперь идите установить переписывания модуля 2.0.
  5. Изменение «MajorVersion» обратно «DECIMAL» значение 10
  6. Нажмите F5 в Regedit
  7. Закрыть Regedit

3. создаем 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="server.js" verb="*" modules="iisnode" />
    </handlers>
      <rewrite>  
        <rules>  
              <rule name="LogFile" patternSyntax="ECMAScript">  
                  <match url="socket.io"/>  
                  <action type="Rewrite" url="server.js"/>  
              </rule>  
        </rules>  
    </rewrite>
  </system.webServer>

</configuration>
где server.js - главный файл
4. Чтобы пробраывать порты с iis на nodejs нужно создавать сервер на node так
server.listen(process.env.PORT);
Статьи:

https://www.hanselman.com/blog/InstallingAndRunningNodejsApplicationsWithinIISOnWindowsAreYouMad.aspx

https://tomasz.janczuk.org/2013/01/hosting-socketio-websocket-apps-in-iis.html

1 комментарий

  • Сергей сказал

    А как можно дебажить приложение на проде?
    Я так понимаю, надо подключиться к процессу. Настроить конфиг в VSC... Есть может идеи как это делается?

Добавить комментарий