【问题标题】:Host node.js project online在线托管node.js项目
【发布时间】:2014-07-02 08:58:00
【问题描述】:

我有一个小型 node.js 和 socket.io 项目,我想在我的服务器上在线运行。我为我的文件使用了翡翠,并使用 npm install 将其打包完成。所以一切都在我的本地文件夹中。我也可以在本地运行它,它可以工作。

但我想连接我的手机来控制我的浏览器,但我无法将我的手机连接到本地主机。所以我需要在线运行它。

问题是当我把它放到网上时,我有一个 index.jade 文件。这个不会被浏览器识别为网页。所以当我转到http://www.woutervdkamp.nl/iphoneconnect/views时,我只会得到一个禁止页面

我的文件夹结构是这样的:

└── httpdocs
   ├── iphoneconnect
   |  ├── node-modules
   |  ├── express
   |  ├── jade
   |  └── socket.io
   ├── package.json
   ├── server.js
   └── views
      ├── index.jade
      └── mobile.jade

我需要使用特殊的主机吗?或者有人可以指出我正确的方向!提前致谢。

我正在尝试做这样的事情: http://sportyfinger.lecoqsportif.com/uk-en/connexion

如果有人有一个很好的教程,那就太好了!我只想知道如何设置iphone和webbrowser之间的连接!现在已经有东西了,但是有点慢。

你好,

沃特

【问题讨论】:

  • 您可以将手机连接到本地网络并通过将其 IP 和端口放入手机中来访问您的开发机器
  • 我认为这根本与节点无关。 “禁止”消息由 Apache 发送。不过,您还没有告诉我们有关您的配置的足够信息。
  • 之后我仍然想在线托管它,所以仍然需要一个解决方案 :) 感谢您的建议,不知道。会试一试的。
  • 我猜你对它应该如何工作有一个根本的误解。你甚至有一个节点进程在运行吗?你的快递应用中有/iphoneconnect/views/ 路由吗?

标签: javascript node.js sockets express pug


【解决方案1】:

首先,您可能无法理解正在发生的事情。

您当前的方法是使用 Apache 将 node.js 项目作为静态站点提供服务。

这是行不通的,你的 node.js 项目由 指令 组成,要解析这些指令,你需要一个程序。该程序称为 node.js,而不是 Apache 或其他任何东西。


您会发现大多数网络托管公司根本不支持 node.js。解决方案是找到特定的 node.js 托管服务或虚拟/云托管。

一些适合任务托管公司1 的有:Heroku、OpenShift、Digital Ocean。

选择后,您必须使用提供的彩色指南设置简单的 Linux 服务器,然后在运行项目之前安装 node.js 程序。

在你准备好 Linux 之后,你必须在那里安装 node.js 并像在本地主机上一样运行你的项目。

总结一下我所说的:

  1. 查找具有 node.js 或 shell 访问权限的托管公司。
  2. 通过托管公司工具设置 linux 操作系统(我建议 Ubuntu)。 (比听起来容易,别担心)
  3. 运行以下命令以在新的 linux 服务器上获取 node.js:

    sudo add-apt-repository ppa:chris-lea/node.js

    sudo apt-get update

    sudo apt-get install python-software-properties python g++ make nodejs

  4. 将项目文件复制到服务器

  5. 导航到服务器上的项目位置并像在本地主机上一样运行它:node.js server.js

1 - Comparison of Hosting companies by @Vinz243

【讨论】:

  • 是的,但不仅如此。有 heroku、openshift(都包括免费计划)、linode ......还有 VPS。我做了一个sheet 与托管比较
  • @Vinz243 确实有很多,正如我在回答中提到的那样:“解决方案是找到特定的 node.js 托管服务或虚拟/云托管。”
  • @Vinz243 虽然我同意最好为他的目的使用“免费”层。修改了建议更多选项的答案
【解决方案2】:

我最近也在做一些简单的 node.js 网络应用,我认为 Heroku 是一个对新开发者非常友好的托管网站。

要在 heroku 上托管,您不需要运行复杂的 bash 命令。 heroku 推荐的方法是在终端上安装一个名为 heroku 的工具,但这不是必需的。只需将远程添加到 heroku 存储库(您可以在他们的网站上创建)并将源代码推送到该远程存储库,您可以从命令行中看到 heroku 将自动检测、编译和托管 node.js Web 应用程序你。

git push heroku master

顺便说一句,Heroku 也有数据库和日志插件。

供您参考:

https://devcenter.heroku.com/articles/getting-started-with-nodejs

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-14
    • 2011-12-16
    • 2018-07-11
    • 1970-01-01
    • 1970-01-01
    • 2018-09-17
    • 2018-12-26
    • 1970-01-01
    相关资源
    最近更新 更多