首页 > 编程语言 >NODE.JS:我如何使用 Heroku 网站托管我的网站

NODE.JS:我如何使用 Heroku 网站托管我的网站

时间:2022-09-18 16:45:29浏览次数:119  
标签:NODE git 网站 创建 JS Heroku 密钥 推送 SSH

NODE.JS:我如何使用 Heroku 网站托管我的网站

文章结构:

  • 介绍
  • 安装工具
  • 使用 node 和 bootstrap 创建一个基本网站
  • 将节点网站推送到heroku虚拟主机

介绍

Node 的一大优点是,一旦您了解了一些事情,它就会非常快速和简单,我将在本文中处理这些事情。所以在本文的下一部分中,我们将下载我们需要的工具,我们需要下载节点、文本编辑器、一个终端来运行我们的命令和其他东西。之后,我们将直接开始构建我们的第一个 Hello World 类型的网站,然后我们将构建一个稍微高级一点的网站,但不要太复杂。所以你不需要知道 HTML、CSS 和类似的东西就可以做到这一点。我会告诉你你需要什么。我们将复制和粘贴大部分 HTML 代码。可能会引导 CSS 框架,它真的很容易复制和粘贴。你不需要 HTML、CSS,你需要知道一点 JavaScript。如果您不了解任何 JavaScript,则不一定要为完全托管网站而进行编程。你可能会过得去,但你不会完全理解将要写的一些东西。我会尽可能多地解释它们,因为 node 的目的是在服务器上运行 JavaScript。所以如果你不知道 JavaScript,为什么你甚至想知道节点,对吧?它没有多大意义,所以如果您不了解 JavaScript,请花点时间学习 JavaScript。这很简单。

安装工具

我首先在我的 Windows 上安装 Node。为此,我只需去谷歌搜索“node.js.org”即可下载 LTS 版本。这是一个非常小的文件,可以立即下载。下载后,我确保按照默认设置安装了它,包括将节点添加到 PATH 和其他内容,并安装“完成”。安装后我重新启动了我的 Windows 允许正确运行进程,仅此而已。

接下来,安装一个终端“Git bash”,它是编码器的版本控制,允许编码器备份代码,保留不同版本的应用程序。这将允许我将代码推送到 git,然后推送到 heroku。我用谷歌搜索 Git bash 并下载了最新版本并默认安装。

所以要运行它,我只需转到 Windows 开始菜单并输入 git bash

运行控制台日志,节点测试;

我打开我的 git bash 终端,输入“pwd”以查看我所在的目录,如您所见,我在 C/Users/Alaro Abdulroqeeb 中,这是我电脑的名称。

使用节点和引导创建一个基本的网站

我首先创建了我的第一个基本 node.js 服务器;

我创建了一个 hello.js 的节点文件并将其保存到目录“nodefiles”中并创建一个变量 http 并将其设置为等于 http 模块并使用它创建一个服务器。并将某些内容输出到网络浏览器。

  • .listen(8080) 是端口号,可以更改。
  • res.end('Hello world') 是显示输出,而不是 Hello world,它可以用 html 语法包装,如 'res.end('

    你好世界

    ');'
  • var http = require('http'), 我声明一个变量 http 需要 http 模块,它允许通过 Internet 传输数据。
  • http.createServer(function(res, req){ ; 我正在创建一个带有 http 的对象服务器,向 res(respond) 和 req(request) 声明一个函数。
  • res.writeHead(200, {'content-Type':'text/html'});处理服务器响应,200 声明分配没问题,没有发现错误并且内容类型为 html 或文本。

接下来,我创建了 index2.html、resume.html 和 about.html 的新文件,并在该文件中添加了导航栏。现在,关于 bootstrap 很酷的事情是我们可以复制和粘贴东西,所以这就是我所做的。在这个文件中没有什么内容,因为主要目的是让应用程序进入 heroku 网络托管。所以我导航到 w3schoool 并搜索“引导导航栏”以访问引导导航栏。

about.html

resume.html

index2.html, here I added bootstrap jumbotron which I access by just google search bootstrap jumbotron and copy…paste.

现在我们已经设置了所有 .html 文件,我们需要配置服务器以访问所有这三个文件;

here the url configuration I used is in the form that only the page name will get display without the usual .html and I created a log report to feed me everything going on, on my server.

将我们的节点网站推送到 Heroku 虚拟主机

生成SSH;

我将使用heroku。这是一种标准的流行网络托管。他们有一个免费版本,让我们可以对其进行修改并付费,这很好,让我们可以学习如何使用它。所以首先我需要设置版本控制,所以我前往 github.com。我设置了一个 GitHub 帐户,然后将我们的终端 bash 连接到 GitHub。现在为了做到这一点,我需要一个 SSH 密钥,它是一个安全密钥,允许您安全地连接到 GitHub,并允许他们识别您并确保您是您所说的人以及所有其他好东西,所以幸运的是这个 Git bash 终端有一个 SSH 密钥生成器。所以我做了什么。在 bash 中,在默认目录中创建了一个新目录来存放我的 SSH 密钥,约定是创建一个隐藏目录,隐藏目录前面有一个句点,所以“mkdir”代表 make 目录然后是.SSH。好吧,然后我进入那个目录,thta的''cd'命令改变目录,然后输入.ssh。所以要生成一个 SSH 密钥,在过去,这曾经很麻烦。这个 Git Bash 终端已经有一个密钥生成器,所以我只需调用“ssh -keygen.exe”,它会生成一个公钥和一个私钥,我将使用公共密钥连接到 GitHub,而私有密钥将保留私下在我的电脑上。所以我收到了关于保存位置的提示,我只想将它保存在这个目录中,所以只需按 Enter,现在它要求输入密码,然后我输入了我的选择密码。我注意到它没有出现在屏幕上,这是一项安全功能。它应该这样做,但请放心,它确实有效。好的,密码已保存,我的公钥已生成,它在文件中。它还创建了一个在文件中的私钥。我输入“ls”以列出目录中的内容并返回两个文件。为了复制这个 SSH 密钥,我输入命令“cat id_rsa.pub”。我确保我做了 .pub 之一。这就是我在 GitHub 上需要的公钥。 SSH 密钥 只是一堆 gobbledygook,我突出显示所有内容并复制。所以现在。所以我去 GitHub,我要去 git hub.com/forward/alaro abdulroqeeb。这是我的 GitHub 帐户。单击显示我的 github 个人资料图片的小图标,然后单击设置。我需要将我的 SSH 密钥添加到我的帐户,所以我向下导航到 SSH GPG 密钥。然后我创建一个新密钥并输入我的标题,粘贴整个密钥,然后添加 SSH 密钥。

初始化 Git 和 Github;

在 node files 目录中,当我们设置 Git 时,它会获取目录中的所有内容并保存,目录中的所有内容都会保存到 git 并保存到版本控制,这就是它的工作原理。所以这个终端上已经安装了Git,我只需要启动它,我需要打开它,并且有几个步骤可以做到这一点。它们很简单,我只是复制并粘贴一些命令。所以我继续前进,只是去'JohnElder.com/code'。

这些命令中的每一个都输入到终端中,因此我只需复制并粘贴并填写正确的详细信息。最后一个是 git init,我正在初始化 Git,所以当我按下 enter boom 时,一个空的 git 存储库已经创建,alert 并显示为 master,这就是 master 分支。

所以有了版本控制,我就有了分支。这意味着 git 已启动并运行并准备就绪,它将保存我所有的文件。每当您想保存我们的代码时,使用 Git 都有两到三步的过程。为了保存我的代码,我输入; “混帐添加。”期间意味着一切。敲回车后,这一切都被保存了,但现在我需要提交它,为此我输入'git commit -am,然后在引号中输入一条小消息。最后一步是将这一切推送到 GitHub,通常我会输入“git push”。但是我还没有连接到我的 GitHub 帐户,为此,我返回 GitHub,在我的个人资料中单击新存储库“节点介绍”。我将其公开并忽略其余内容,然后单击创建存储库,完成设置的另一个步骤是在我的终端中输入这三个命令。

I changed ‘main’ to ‘master’ because my directory is master and for image is changed to ‘intro to node’ which is the name of my repository

因为我正在从命令行推送现有存储库,所以之后我可以输入 git push。但是我第一次这样做时,我必须这样做整个 'git push -u origin master' 。在点击进入繁荣时,它正在收集所有东西并将它们发送到 GitHub。

这是节点存储库的介绍,您可以在这里看到我的所有文件。

安装 Heroku Toolbet CLI;

我们需要再安装一个软件才能通过我们的终端连接到 Heroku,为此我使用了一个叫做 Heroku 工具带的东西。这是一个 CLI(命令行界面)。我在 Windows 上搜索了 Heroku 工具带,我下载并使用默认设置安装了它,安装后我关闭了终端并重新启动它,因为有时我们只需要这样做。在 /c/nodefiles 目录中,我输入了 heroku — 版本,我们有版本 7.53.0。这意味着它已正确安装。

创建一个 Package.json 文件;

npm init,npm 是节点包管理器。它允许我们将其他东西安装到我们的应用程序中并引导我们完成,它提出了一些问题,创建了一个 package.json 文件,这就是我们要创建的文件。 Package.json 仅涵盖最常见的项目。

将我们的代码推送到 Heroku;

在我将代码推送到 Heroku 之前。在终端 'git add .'跟着 git commit -am 假设添加了 package.json ,然后 push 将其推送到 Heroku。询问 SSH 密钥的 SSH 密码。所以去heroku网站tt就是heroku.com。所以我注册了heroku,它是免费注册的。现在我需要将我们的终端连接到 Heroku,为此我输入“heroku login”。按任意键打开浏览器登录或 q 退出是显示的提示。我登录了 Heroku CLI。所以我首先要做的是在 Heroku 上创建一个应用程序。所以要做到这一点,我输入“heroku create”,因为我已经登录了,繁荣。它正在为我创建一个应用程序,它甚至给了我 URL。所以我复制了它,然后回到我的浏览器中粘贴它。我明白了;欢迎使用您的新应用。这只是基本的默认页面。这里还什么都没有。我没有在上面推送任何东西,但是在我将代码推送到 Heroku 之前,我需要告诉 Heroku 一个命令来开始运行服务器。

因此,在我们的 hello.js 文件的顶部,我将放入常量端口。我们将创建这个端口变量,然后等于进程环境 .port 和 5000。我直接从 Heroku 文档中复制了这个,这是他们告诉我的。我创建了这个新变量。我基本上是在说,嘿,使用 heroku 所说的任何端口。所以我保存了这个。新文件新建,我只是在新文件名 procfile 中粘贴“web: node hello.js”。

是一样的,基本上和我在package.json里加的一样。但我是说,你知道这是一个网络应用程序,这是你用来启动网络应用程序的命令。所以现在,我保存了这些更改, git add 。 git commit -am 'updated package.json and hello.js port' 作为提交信息。然后,git push,推送到 GitHub,要求输入密码。现在我需要将所有这些推送到 Heroku,为此我们输入:'git push heroku master'。

因此,在线托管网站就这么简单,您可以根据自己的喜好更改应用程序的名称、域名和其他内容。文章到此结束, 谢谢你!!

在 git hub 上查看完整的源代码: https://github.com/Zcamm7417/intro-to-node

感谢您一直关注到本文的最后!

在 Linkedln 上与我联系 https://www.linkedln.com/mwlite/in/alaro-abdulroqeeb

中等在 https://medium.com/@abdulroqeebalaro5

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明

本文链接:https://www.qanswer.top/37586/29221816

标签:NODE,git,网站,创建,JS,Heroku,密钥,推送,SSH
From: https://www.cnblogs.com/amboke/p/16705167.html

相关文章

  • nodejs与npm版本管理
    目录一、nodejs版本控制二、npm版本控制1、降级2、升级node与npm版本对应关系及下载:https://nodejs.org/zh-cn/download/releases/使用npm安装包报错“npmWARNnpmnpm......
  • uni-app中使用jsencrypt
    1.在工具栏的”视图“下打开终端或者ctrl+`2.安装jsencrypt,安装的东西都会在node_module下npmijsencrypt3.在需要加密的文档中引入importJSEncryptfrom'../../n......
  • Js新手-简单数据类型和复杂数据类型
    <!DOCTYPEhtml><htmllang="zh-CN"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><metaname="viewport"cont......
  • Js-实现简易加减乘除计算器
                                     今日小案例,用Js实现一个小小的计算器 <!DOCTYPEhtml><html......
  • 创新实战|高转化网站首页设计的10大关键要素
    设计开发一个好的网站首页并不像造火箭一样难,但它确实也需要费一番功夫。我们需要学习怎么做能够满足客户需求的网站首页设计。那么,到底应该如何做?本文将从首页的十个要素......
  • cmd 'node' 不是内部或外部命令,也不是可运行的程序 或批处理文件。
    报错:cmd提示:‘node‘不是内部或外部命令,也不是可运行的程序原因:没安装node.js或者没配置好环境变量情况1:安装node.js下载地址:https://nodejs.org/en/安装步骤:默......
  • JS 带多个参数跳转页面 获取url参数数组
    1.跳转前页面代码处理,仅罗列href跳转方法,其他如jQuery跳转等原理一直不再赘述:<ahref="newUrl.html?para=1&id=2&page=3">点击文字跳转</a> 2.跳转后页面代码处理:......
  • 更换node版本方法
    更换node版本的方法前景:近来公司写项目的时候,发现一个问题,node版本不同导致的安装依赖版本不同导致项目无法正常启动。总结出来问题的原因有两点:npm包管理器安装依赖不成......
  • <nodejs>构建web本地服务器报错Error [ERR_STREAM_WRITE_AFTER_END]: write after end
    报错如图:同步完成后还会执行后面的代码后报错,是因为执行完res.end之后不能再执行res.writeHead,解决方法就是把最后res.end的内容删掉就可以正常在浏览器里访问了。也有人......
  • nodejs <a>带参数返回路由标记执行数据库操作
    今天在测试mongo数据库操作维护的时候,测试了一下直接在表内添加操作列来完成数据的删除操作,直接返回数据库ID1、mongo数据操作functiondelStudentid(id,callback){ ......