【问题标题】:host node js on windows server (iis)Windows服务器(iis)上的主机节点js
【发布时间】:2018-02-26 05:48:34
【问题描述】:

一个月前我开始学习服务器端编码,我使用“express”框架和 mssql 构建了一个带有 get 和 post 请求的 nodejs 项目和 web 服务。 我的项目文件包括一个“main.js”文件和一个“node_modules”文件夹。

我正在尝试在 IIS 上托管这个项目,但不知道如何做,也没有经验。

我是否必须以某种方式打包我的项目。

我可以在 IIS 上托管 nodejs 项目吗?如果是这样,那么我需要执行哪些步骤。 我有一个运行 IIS 并安装了 mysql 的 Windows 服务器。

【问题讨论】:

标签: node.js iis hosting


【解决方案1】:

我参加聚会有点晚了,所以你可能已经解决了这个问题或者走了一条不同的路。

您可以使用iisnode 在 IIS 内运行节点应用程序。

就我个人而言,让 iisnode 运行的成功参差不齐,但这绝对是可能的。

【讨论】:

    【解决方案2】:

    这里是一步一步...

    1. 如果你还没有安装nodeiisnodeurlrewrite
      1. 将网站添加到 iis
      2. 编辑主机文件
      3. 将您的网站网址添加到主机
      4. 检查您的新网站模块以确保安装了 iisnode
      5. 如果它在那里你很好
      6. 创建节点应用代码JS文件
      7. 将此代码放入文件中
    var express = require("express");
    var app = express();
    app.get("/", function(req, res) {
      res.send("Hello Worlxxxxd!");
    });
    // This is REQUIRED for IISNODE to work
    app.listen(process.env.PORT, () => {
      console.log("listening");
    });
    
    1. 在目录中添加一个web.config文件并将这段代码放入其中

    <handlers>
      <add name="iisnode" path="node_app.js" verb="*" modules="iisnode" />
    </handlers>
    
    <rewrite>
      <rules>
        <rule name="nodejs">
          <match url="(.*)" />
          <conditions>
            <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
          </conditions>
          <action type="Rewrite" url="/node_app.js" />
        </rule>
      </rules>
    </rewrite>
    
    <security>
      <requestFiltering>
        <hiddenSegments>
          <add segment="node_modules" />
          <add segment="iisnode" />
        </hiddenSegments>
      </requestFiltering>
    </security>
    </system.webServer> </configuration>
    
    1. 在浏览器中导航到新站点,您应该会收到此错误,因为您尚未安装 express 包

    2. 打开命令提示符并安装 express

    3. 刷新网页,瞧

    【讨论】:

    • 不错。但是,我被困在 10 点。无法调试。
    • 感谢您提供完美的屏幕截图指南。不仅学习了如何在 IIS 中部署节点,还学习了如何顺利设置自定义主机名。
    • 提示:从 Node 网站下载 Node 而不是使用这个热链接,我最终在 64 位服务器上安装了 x86 版本,这不起作用!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-01-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多