首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

我尝试在heroku上部署NodeJS应用程序,但无法从外部路由器发出请求

在部署NodeJS应用程序到Heroku时,如果你无法从外部路由器发出请求,可能存在以下几种原因和解决方法:

  1. 防火墙设置:首先,确保你的路由器或网络防火墙没有阻止对应用程序的访问。检查路由器设置或联系网络管理员以解决此问题。
  2. Heroku Dyno访问限制:Heroku有一些访问限制,其中包括Dyno(即应用程序实例)的休眠模式。如果Dyno处于休眠状态,它将无法响应外部请求。确保你的Dyno处于活动状态。你可以通过周期性发送请求来保持Dyno处于活动状态,或者考虑升级到付费Heroku套餐以获得更好的可用性。
  3. 网络配置:检查你的应用程序的网络配置,确保正确设置了端口和IP地址。在NodeJS应用程序中,你可以使用process.env.PORT访问Heroku分配的端口号。
  4. HTTPS/SSL证书:如果你的应用程序需要使用HTTPS协议,你需要确保配置了正确的SSL证书。Heroku提供了免费的SSL证书,你可以在Heroku的管理面板中进行配置。

总之,这些是在Heroku上部署NodeJS应用程序并解决无法从外部路由器发出请求的常见问题。根据具体情况进行排查和调试,以确保网络连接和配置正确无误。在需要帮助时,你可以参考Heroku的官方文档或咨询Heroku支持团队。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

放弃“免费套餐”,Heroku的遗产又少了一个

如果没有 Heroku,我永远无法达到今天的水平,以至于现在我真的无法说清它对我的职业生涯曾经有多么重要!” 像他这样通过 Heroku 学习编程的,不是少数。...容器:很少有人记得它,但 Heroku 在容器还不流行的时候就已经开始运行了,使用 LXC 作为其 Cedar 栈的核心技术。...即使是最大的数据处理应用也可以部署在 10GB 或 100GB 内存的容器上,一直到最小的一次性云 grep 运行只需要几兆字节。如此快速和简单,以至于不在 Heroku 上运行简直就是疯了。...这是有可能的,但是经常需要你自己发出拉取请求或者给某个人发送一个请求来帮助你修改。即使有推动新特性的强烈动机,它也常常会从组织 / 服务的边界中消失殆尽。...我们现在所见,容器技术已经成为许多部署栈的基石,但更多的是作为一种原始技术,其中有许多技术可以提高其工作效率。

5.1K40
  • 关于“Python”的核心知识点整理大全64

    我们还需确保任何人 都无法看到这些信息,也不能冒充项目托管网站来重定向请求。...下面来修改settings.py,以让我们能够在本地看到错误消息,但部署到服务器后不显示任何 错误消息: settings.py --snip-- # Heroku设置 if os.getcwd...如果你尝试向本地的“学习笔记”发出同样的请求——输入URL http://localhost:8000/letmein/,你将看到完整的Django错误页面。...使用方法get_object_or_404() 现在,如果用户手工请求不存在的主题或条目,将导致500错误。Django尝试渲染请求的页 面,但没有足够的信息来完成这项任务,进而引发500错误。...这个函数尝试从数据库获取请求的对象, 如果这个对象不存在,就引发404异常。

    10210

    部署一个Sinatra应用程序到Heroku

    Heroku是一个云应用程序平台,专门用于解决服务器管理问题。您只需构建您的应用程序,通过Git将其推送到Heroku,部署就完成了。但是该怎么部署一个Sinatra应用程序呢?...让我们来看看… 如果你读过我的一篇用Sinatra构建一个数据驱动的应用程序的文章,你可能已经准备好尝试部署了。...和Heroku不支持Sqlite。 Sinatra是一个构建应用程序的工具,但Heroku不是。...创建Heroku应用程序 回到命令行上: heroku create nameofapp nameofapp是你想要给应用程序起的名字,要牢记形似下边这样的Heroku创建的应用程序对应的网址:nameofapp.herokuapp.com...然后,假设你已经提交了最新的更新,你可以这样做: git push heroku master 你会看到Heroku收到推送请求,压缩文件,安装所需的Ruby gem,然后,没有问题的话,部署你的应用程序

    5.1K110

    如何白嫖一个动态网站

    image.png 如果你会 TailwindCSS 我推荐 VSCODE 安装 这个插件tailwind-snippets 可以快速帮我们来发出一个常用的代码片段,大家可以在 https://www.tailwindsnippets.ml...Vercel 注册什么的我就不讲了,建议使用GitHub 登录, 点击new project创建一个项目,这个项目可以从自己的 GitHub 库导入或者选择 Vercel 给的模板,Vercel 给的模板...但 heroku 对国内用户支持不是很友好,第一点访问国内速度比不上 Vercel, 第二点 163 和 QQ 邮箱都不能注册,想要注册得要其他邮箱, 第三没有免费的 ssl。...image.png 可以在命令行中管理数据,点击上图中的按钮随机生成密码,密码要用户手动保存,后面登录将无法看到 域名解析 Vercel 绑定域名 image.png 绑定域名我就不多讲了吧,直接去自己的域名平台...网站备案 这边介绍的方案都是服务都不是部署在大陆的,所以可以选择不用备案,但如果想要在大陆运营的话,海外的速度往往跟不上的,还是要选择大陆的服务器,备案必不可少,各大云服务厂商都提供了备案服务,按照要求填写网站信息即可

    1.1K20

    【技术种草】如何白嫖一个动态网站

    [image.png] 如果你会 TailwindCSS 我推荐VSCODE 安装 这个插件tailwind-snippets 可以快速帮我们来发出一个常用的代码片段,大家可以在 https://www.tailwindsnippets.ml...Vercel注册什么的我就不讲了,建议使用GitHub 登录, 点击new project创建一个项目,这个项目可以从自己的 GitHub 库导入或者选择Vercel给的模板,Vercel给的模板(下图...但 heroku 对国内用户支持不是很友好,第一点访问国内速度比不上 Vercel, 第二点 163和QQ邮箱都不能注册,想要注册得要其他邮箱, 第三没有免费的 ssl。...[image.png] 可以在命令行中管理数据,点击上图中的按钮随机生成密码,密码要用户手动保存,后面登录将无法看到 域名解析 Vercel绑定域名 [image.png] 绑定域名我就不多讲了吧,直接去自己的域名平台...网站备案 这边介绍的方案都是服务都不是部署在大陆的,所以可以选择不用备案,但如果想要在大陆运营的话,海外的速度往往跟不上的,还是要选择大陆的服务器,备案必不可少,各大云服务厂商都提供了备案服务,按照要求填写网站信息即可

    5.2K52

    关于“Python”的核心知识点整理大全62

    注意 在Windows系统中,有些必不可少的包可能无法安装,因此如果在你尝试安装有些这样 的包时出现错误消息,也不用担心。重要的是让Heroku在部署中安装这些包,下一节就 将这样做。...在Heroku部署中,这个目录总是/app。在本地部署中,这个目录通常是项目文件夹的名称(就我 们的项目而言,为learning_log)。...20.2.10 在本地使用 gunicorn 服务器 如果你使用的是Linux或OS X,可在部署到Heroku前尝试在本地使用gunicorn服务器。...处的输出表明,gunicorn在端口5000上侦听请求。另外, gunicorn还启动了一个工作进程(12878),用于帮助处理请求(见3)。...注意 gunicorn不能在Windows系统上运行,因此如果你使用的是Windows系统,请跳过这一步。 但这不会影响你将项目部署到Heroku。.

    16610

    关于“Python”的核心知识点整理大全63

    执行这些命令后,项目就部署好了,但还未对其做全面的配置。...你将看到 “学习笔记”的主页,其样式设置正确无误,但你还无法使用这个应用程序,因为我们还没有建 立数据库。 注意 部署到Heroku的流程会不断变化。...在3处,Django应用默认迁移以及我们在开发“学习笔记” 期间生成的迁移。 现在如果你访问这个部署的应用程序,将能够像在本地系统上一样使用它。...20.2.14 改进 Heroku 部署 在本节中,我们将通过创建超级用户来改进部署,就像在本地一样。...注意 你使用Heroku提供的免费服务来部署项目时,如果项目在指定的时间内未收到请求或过 于活跃,Heroku将让项目进入休眠状态。

    10810

    Java开发者的PaaS指南

    同时,我也有幸参与了从开始到交付的整个软件开发过程。不过在基础设施这一块,我没有参与太多。另外,我也创建过一些服务器,但大多数生产基础设施的构建都是由基础设施团队完成的。我认为这很常见。...从本质上讲,Cloud Foundry通过API提供了一个应用程序部署平台,可以将部署在公有云、私有云或是数据中心服务器上的底层基础结构抽象出来。...Java应用程序托管在Pivotal Web Services PaaS云服务上,其他所有组件都在外部运行,但它仍然在亚马逊(Amazon)的us-east-1 AWS区域。...一些web应用程序服务器也会为应用程序的热部署(hot swapping) 提供支持,但原理都一样。 尽管这个方法是可行的,但在这个过程中,用户就会有一段时间无法使用服务。...多年来,技术人员也构想了许多技术方案来处理这个问题,业界最流行的就是蓝绿部署,在这种部署方案里,会有一个物理或是虚拟的路由器,将流量从应用程序的一个运行实例切换到另一个。

    2.2K40

    部署一个Sinatra应用程序到Heroku

    Heroku是一个云应用程序平台,专门用于解决服务器管理问题。您只需构建您的应用程序,通过Git将其推送到Heroku,然后放松一下。那么当提到部署一个Sinatra应用程序呢?...让我们来看看… 如果你读过我的文章:用Sinatra构建一个数据驱动的应用程序,你可能已经准备好尝试部署了。...我将在稍后的帖子中讨论这些。记下生产和发展群组。Heroku并不支持Sqlite。 Sinatra是一个Rack应用程序,但Heroku与这些没有任何障碍。...我们只需要一个文件来解释我们如何让我们的应用程序运行: 在config.ru你需要以下内容: require '....创建Heroku应用程序 回到命令行上: heroku create nameofapp nameofapp的位置是根据你想要你的应用程序取什么名决定的,铭记Heroku将用这样的网址创建你的应用程序

    2.7K60

    在 Heroku 中部署 Node.js 应用

    原文作者:Vipul Malhotra 原文地址:https://dzone.com/articles/deploying-nodejs-on-heroku 今天,我将给大家演示一下如何部署一个 Node.js...应用到Heroku上。...Heroku为我们提供了最多能部署5个应用的免费账户。想获得更多应用的话需要额外付款。我在文章中使用的 Node.js 示例,代码是这个网址的,也请提前看一下。...为了更好的部署,你需要在系统中安装Heroku ToolBelt,同时,你也需要在系统中安装 Git ,因为 Heroku 依赖 Git 。 开始之前,你在Heroku网站上需要创建一个账户。...步骤4 在这一步,需要登陆进你刚才创立的 Heroku 账户,输入命令 heroku login,然后根据请求提供用户名和密码。如下图: [图5] [图6] 步骤5 在 Heroku 中创建一个应用。

    2.8K100

    Salesforce大刀阔斧变革开发者体验

    Salesforce DX在设计上可以对这种分布式应用程序设计提供良好的支持。我们基于Heroku平台构建的持续交付和持续集成工具对应用开发所用的语言,以及编写自定义应用的语言没有任何要求。...您能否介绍一下这个服务,以及该服务在Salesforce内部和外部的使用方法?...对于连接至GitHub的Heroku应用,Heroku可以手工或自动使用唯一URL为每个打开的Pull请求(PR)创建一个临时的测试用应用。...每个部署可在Heroku Dashboard中应用的Activity选项卡下看到当前发布和上一次提交之间的差异,这样开发者就无需猜测应用中到底包含了哪些代码。...应用程序从自举到最终部署需要经历哪些步骤,用到哪些技术? Wegner:设计Salesforce DX的过程中,我们的基本原则之一在于让团队能够灵活定义最适合自己的方法。

    1.8K30

    微服务网关的基础职能——路由

    不过,因为今天 REST 和 JSON-RPC 等基于 HTTP 协议的接口形式,在对外部提供的服务中占绝对主流的地位,所以我们这里所讨论的服务网关默认都必须支持七层路由,这样通常就默认无法转发,只能采用代理模式...对于每一次网络访问,从远程主机返回的数据会先存放到操作系统内核的缓冲区中,然后再从内核的缓冲区,复制到应用程序的地址空间,所以当一次网络请求发生后,就会按顺序经历“等待数据从远程主机到达缓冲区”和“将数据从缓冲区拷贝到应用程序地址空间...同步就是指调用端发出请求之后,在得到结果之前必须一直等待,与之相对的就是异步,在发出调用请求之后将立即返回,不会马上得到处理结果,这个结果将通过状态变化和回调来通知给调用者。...在需要高可用的生产环境中,应当考虑在网关之前部署负载均衡器或者等价路由器(ECMP),让那些更成熟健壮的(往往是硬件物理设备)的设施去充当整个系统的入口地址,这样网关就可以很方便地设置多路扩展了。...那么在路由方面,因为现在我们所讨论的服务网关默认都必须支持七层路由,通常就默认无法转发,只能采用代理模式。

    74920

    Subdomain-Takeover子域名接管原理和利用案例

    上创建我自己的帐户并且注册设置podcasts.slack-core.com作为我订阅的“自定义域名”,在它通过Feed传播之后最终成功的接管了域名podcasts.slack-core.com提供的内容.../) 2.在Heroku上部署应用程序。...git push heroku master 您正在部署的应用程序可以在*.herokuapp.com中看到。...Heroku - Heroku是一个平台即服务提供商,可以使用简单的工作流程部署应用程序。由于需要访问应用程序,Heroku使用herokuapp.com上形成的子域公开应用程序。...但是也可以指定自定义域名以访问已部署的应用程序。 Shopify - Shopify提供了一种在云中创建和自定义电子商务商店的方法。访问商店的默认子域是在myshopify.com上构建的。

    6.5K10

    hydra-microservice 中文手册(上篇)

    Hydra 是一个 NodeJS 包(技术栈不是重点,思想!思想!思想!),它有助于构建分布式应用程序,比如微服务。...简而言之,Hydra 降低了构建和部署微服务的门槛。 Hydra 与 Redis Hydra 项目的主要目标是在不牺牲健壮性和可伸缩性的情况下, 降低构建和部署可伸缩 Node 微服务的障碍。...Hydra-Router 是一种动态且可感知服务的路由器, 它使用存储的路由信息将外部请求定向到云或集群环境中的服务。...如果您从未使用过 Redis,我们认为这将是一次改变生活的开发人员经验, 希望这是最终尝试它的一个很好的理由! 如果您已经在使用 Redis,那么恭喜您已经升级了,请随时跳至第2步!...在 Mac 上,您可以使用一个简单的命令通过 Homebrew 安装Redis:brew install redis。 如果您不介意从源代码构建 Redis,请查看《Redis快速入门指南》。

    2.3K20

    高端黑科技系列一:新一代微服务与新一代API管理的集成

    创建应用计划 应用程序计划为API定义访问策略。 ? ? 创建应用程序 在本节中,将应用程序与API使用者帐户相关联。 这将根据先前在应用程序计划中定义的详细信息为应用程序生成用户密钥。...用户密钥用作HTTP请求的查询参数,以通过内部部署API网关调用业务服务。 ? Stage服务整合 在API Manager管理员门户中,选择API。...而API网关无法连接到3scale API Manager的原因是:$THREESCALE_PORTAL_ENDPOINT引用了外部Internet URL。...通常这个对象用来启用对 Istio 服务网格之外的服务发出请求。例如下面的 ServiceEntry 可以用来允许外部对 *.foo.com 域名上的服务主机的调用。 ?...使用curl实用程序,重新尝试通过启用istio的API网关检索目录数据的请求。 ? ? 这次,我们在响应中看到目录数据。 此请求现在流经启用了istio的API网关。

    1.7K30

    【Linux网络#16】:NAT 技术& 代理服务器 & 内网穿透

    动静分离:在大型网站中,通常需要将静态资源和动态资源分开处理。通过将静态资源部署在反向代理服务器上,可以直接从反向代理服务器返回静态资源的响应,而无需再次向后端服务器发起请求。...部署位置上:NAT 一般集成在防火墙、路由器等硬件设备上,代理服务器则是一个软件程序,需要部署在服务器上。 代理服务器是一种应用比较广的技术: 翻墙:广域网中的代理。 负载均衡:局域网中的代理。...即使外网主机将数据发送给NAT路由器, NAT路由器 也不会将该数据转发给局域网主机,因为 NAPT转换表 没找到映射关系 但这并不代表无法从外网访问内网主机。...1.1 背景 在大多数网络环境中,内网设备(如家庭路由器内的设备、公司内部网络中的服务器等)通常被隐藏在路由器或防火墙之后,无法直接从外部网络访问。...四、小结 — 跨网络通信流程 学了这么多网络方面的东西,我们来总结一下 跨网络通信的总体流程吧,如下: ① 应用层:应用程序向操作系统发出请求,例如在浏览器中输入网址——域名解析DNS,获取目标服务器的

    16110

    Subdomain-Takeover子域名接管原理和利用案例

    上创建我自己的帐户并且注册设置podcasts.slack-core.com作为我订阅的“自定义域名”,在它通过Feed传播之后最终成功的接管了域名podcasts.slack-core.com提供的内容.../) 2.在Heroku上部署应用程序。...git push heroku master 您正在部署的应用程序可以在*.herokuapp.com中看到。...Heroku - Heroku是一个平台即服务提供商,可以使用简单的工作流程部署应用程序。由于需要访问应用程序,Heroku使用herokuapp.com上形成的子域公开应用程序。...但是也可以指定自定义域名以访问已部署的应用程序。 Shopify - Shopify提供了一种在云中创建和自定义电子商务商店的方法。访问商店的默认子域是在myshopify.com上构建的。

    4K21

    Node.js 安全最佳实践

    大家好,我是 ConardLi。 最近 Node.js 团队在官方文档上公布了一份最新的安全实践,解读了一些 Node.js 服务下一些常见的攻击场景以及预防手段,我们一起来看看吧!...我们可能会从数据库检索出来的用户信息中比较密码。对于相同的长度值,使用内置字符串比较可能需要更长的时间。这种比较在以可接受的数量运行时会增加请求的响应时间。...虽然我们可以在 package.json 中指定依赖项确切的版本号或范围,但这只能保证直接依赖的固定,我们仍然无法保障间接依赖的不确定性更新。...由于在 Web 浏览器中打开的网站可以发出 WebSocket 和 HTTP 请求,它们可以针对本地运行的调试检查器。...这通常会被现代浏览器实施的同源策略所阻止,这个策略会禁止脚本访问来自不同来源的资源(意味着恶意网站无法读取从本地 IP 地址请求的数据)。

    2.3K20
    领券