2016-06-02 9 views
2

Wir haben eine Anwendung erstellt, die auf node.js mit Angular2 läuft, aber Sie haben es nicht mit "npm" gestartet, die den Lite-Server verwendet. Uns wird jedoch gesagt, dass wir viel unter IIS laufen, aber das Problem ist, npm lädt alle Pakete für Sie korrekt, IIS und IISNode wissen nichts über all diese Pakete, die wir über "npm" heruntergeladen haben. Wir haben noch niemanden gesehen, der jemals eine Angular2 oder sogar Angular-Anwendung erstellt hat, die unter IIS mit IISNode läuft.Hat jemand eine Node.js-, Angular2-Anwendung erstellt, die unter IISNode ausgeführt wird?

Weiß jemand, wie wir es alle Module richtig laden lassen würden?

+0

Ich habe versucht, aber ich fand IISNode ein bisschen ... seltsam. Ich habe stattdessen nur einen Reverse-Proxy verwendet, wodurch es genauso funktioniert, wenn Sie es stattdessen mit nginx oder apache hosten würden. –

+0

Haben Sie einen Beispielcode, den Sie posten könnten? Mit Reverse Proxy meinen Sie, dass Sie es unter IIS ausführen? –

+0

Ja, und nein, ich habe keinen Code zu teilen, wir sind seit Linux umgezogen. Es ist nur eine einfache URL-Rewrite-Regel in IIS. Suchbegriffe sollten "IIS Reverse Proxy" sein, es ist nicht wirklich eine Knoten Sache. –

Antwort

1

Ich beantwortete Mikes Frage in der Ausgabe, die er auf der IISNode Repo on Github öffnete. Hier sind die Auszüge aus dieser Ausgabe.

Angular2, so weit ich weiß, hat nichts mit IISNode zu tun und sollte keine Probleme mit der Ausführung Ihrer App in einer IISNode-Umgebung darstellen.

IISNode bietet eine Möglichkeit, node.exe auf einem IIS-Server auszuführen, anstatt einen Prozessmanager wie pm2 oder forever zu verwenden. Sie können eine Angular2-App, die mit einem Node.js/Express-Backend gehostet wird, einfach ausführen, indem Sie einfach den Beispielen folgen, um einen Express-Server in IISNode laufen zu lassen. Sehen Sie sich this tutorial I wrote on StackOverflow an, um eine Express-App in IIS mit IISNode auszuführen. Sobald Sie Ihre Express-App laufen haben, ist es nur noch eine Frage, wie Sie Angular2 auf eine browserkompatible JS-Version übertragen und diese bedienen können.


konnte ich erfolgreich den Angular2 Quickstart in IISNode läuft gerade jetzt (ich weiß, das ist nicht eine vollständige geblasene app) und ich weiß auch, würde ich nicht meine node_modules gemacht habe statisch, sondern zum Zweck der Übung habe ich.

Hier ist das Repo es funktioniert perfekt und geladen für mich gut.

Klonen Sie einfach das Repo, platzieren Sie es auf Ihrer IIS-Box und machen Sie npm i und Sie sollten gut gehen. Stellen Sie sicher, dass die App unter "root" erreichbar ist. Andernfalls müssen Sie zusätzliche Arbeit verrichten. Wiederum weiß ich, dass dies einfach ist, aber es ist eine Demonstration, dass IISNode kein Problem damit hat, das Wesentliche von Angular2 zu laden.