【问题标题】:Amazon EC2 Ubuntu instance: Where should I upload the files to access them from the browser?Amazon EC2 Ubuntu 实例:我应该在哪里上传文件以从浏览器访问它们?
【发布时间】:2016-09-02 22:03:54
【问题描述】:

我创建了一个 Amazon EC2 Ubuntu 实例来测试一些 nodeJS 文件和 JS 文件。

我已经设法在那里安装了 NodeJS 和 MongoDB,而且我确实有一个公共 IP。

现在,我应该将文件上传到哪里才能从浏览器访问文件?类似于 myPublicIP/index.html

我已经阅读here 说我应该使用/var/www/html 目录,但是我在尝试使用cd var/www/html 定位时没有找到它。

我应该创建那个目录吗?

【问题讨论】:

  • 您的 nodejs 应用程序使用什么框架?我猜(不清楚)通过“从浏览器访问”,你的意思是启动你的 nodejs 应用程序开始通过 nodejs 服务 http。简单的答案可能是您应该像在开发盒上那样做。
  • 感谢您的评论!我刚刚安装了nodeJS,我正打算测试它,但现在我只想添加一个包含一些JS的html文档,并从浏览器访问它。

标签: node.js mongodb ubuntu amazon-web-services amazon-ec2


【解决方案1】:

当您使用 Apache 时,您只需要 /var/www/html,这不是您的情况,因为您使用的是 nodeJS。

您只需将代码上传到 EC2 中的文件夹,然后使用启动它

node file.js

但是,如果您这样做,则在您关闭终端的那一刻,所有连接都将丢失,并且您的节点服务器将停止侦听新的传入连接。您的 EC2 实例还需要在安全组中有规则,以允许传入流量到您正在侦听的门。

【讨论】:

    【解决方案2】:

    Nodejs 不是一个网络服务器——与 Apache 或 Nginx 不同——但有几个框架可以实现网络服务器功能的基础,还有更多。

    一个简单且经常使用的框架是 express(您通过 $npm install express --save 将其安装到您的 nodejs 应用程序中)

    express guide 有很多不同的处理请求的例子,包括如何使用中间件来解析 url,你可以简单地用几行代码编写一个简单的 webserver。

    您还应该查看此问题答案中的一些广泛示例:Using node.js as a simple web server

    【讨论】:

      猜你喜欢
      • 2020-06-20
      • 2018-11-03
      • 1970-01-01
      • 2016-06-25
      • 2015-10-04
      • 2019-06-19
      • 1970-01-01
      • 2015-03-14
      • 1970-01-01
      相关资源
      最近更新 更多